1755097565, 'meta' => array ( 'cacheVersion' => 'v12-linesToIgnore', 'phpstanVersion' => '2.1.18', 'metaExtensions' => array ( ), 'phpVersion' => 80411, 'projectConfig' => '{parameters: {typeAliases: {AnalyticsData: \'array\', MetricsData: \'array\', BreakdownData: \'array\'}, level: 8, paths: [/home/michael/dev/michaelschiemer/src], excludePaths: {analyseAndScan: [src/Framework/View/cache, src/Framework/Cache/storage, src/Application/Security/Events/, src/*/views/*.php], analyse: []}, tmpDir: /home/michael/dev/michaelschiemer/var/phpstan, phpVersion: 80400, universalObjectCratesClasses: [App\\Framework\\DI\\Container], bootstrapFiles: [tests/bootstrap.php]}, rules: [App\\Framework\\Quality\\PHPStan\\Rules\\PreferValueObjectsRule, App\\Framework\\Quality\\PHPStan\\Rules\\UseFrameworkAbstractionsRule, App\\Framework\\Quality\\PHPStan\\Rules\\ForbiddenFunctionsRule, App\\Framework\\Quality\\PHPStan\\Rules\\UseClockAbstractionRule, App\\Framework\\Quality\\PHPStan\\Rules\\UseTimerAbstractionRule, App\\Framework\\Quality\\PHPStan\\Rules\\UseDateTimeAbstractionRule]}', 'analysedPaths' => array ( 0 => '/home/michael/dev/michaelschiemer/src', ), 'scannedFiles' => array ( ), 'composerLocks' => array ( '/home/michael/dev/michaelschiemer/composer.lock' => '616cb86d93cff56bad3317c62b7e3f6c334c96cf', ), 'composerInstalled' => array ( '/home/michael/dev/michaelschiemer/vendor/composer/installed.php' => array ( 'versions' => array ( 'brianium/paratest' => array ( 'pretty_version' => 'v7.8.3', 'version' => '7.8.3.0', 'reference' => 'a585c346ddf1bec22e51e20b5387607905604a71', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../brianium/paratest', 'aliases' => array ( ), 'dev_requirement' => true, ), 'clue/ndjson-react' => array ( 'pretty_version' => 'v1.3.0', 'version' => '1.3.0.0', 'reference' => '392dc165fce93b5bb5c637b67e59619223c931b0', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../clue/ndjson-react', 'aliases' => array ( ), 'dev_requirement' => true, ), 'composer/pcre' => array ( 'pretty_version' => '3.3.2', 'version' => '3.3.2.0', 'reference' => 'b2bed4734f0cc156ee1fe9c0da2550420d99a21e', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/./pcre', 'aliases' => array ( ), 'dev_requirement' => true, ), 'composer/semver' => array ( 'pretty_version' => '3.4.3', 'version' => '3.4.3.0', 'reference' => '4313d26ada5e0c4edfbd1dc481a92ff7bff91f12', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/./semver', 'aliases' => array ( ), 'dev_requirement' => true, ), 'composer/xdebug-handler' => array ( 'pretty_version' => '3.0.5', 'version' => '3.0.5.0', 'reference' => '6c1925561632e83d60a44492e0b344cf48ab85ef', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/./xdebug-handler', 'aliases' => array ( ), 'dev_requirement' => true, ), 'cordoval/hamcrest-php' => array ( 'dev_requirement' => true, 'replaced' => array ( 0 => '*', ), ), 'davedevelopment/hamcrest-php' => array ( 'dev_requirement' => true, 'replaced' => array ( 0 => '*', ), ), 'doctrine/deprecations' => array ( 'pretty_version' => '1.1.5', 'version' => '1.1.5.0', 'reference' => '459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../doctrine/deprecations', 'aliases' => array ( ), 'dev_requirement' => true, ), 'evenement/evenement' => array ( 'pretty_version' => 'v3.0.2', 'version' => '3.0.2.0', 'reference' => '0a16b0d71ab13284339abb99d9d2bd813640efbc', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../evenement/evenement', 'aliases' => array ( ), 'dev_requirement' => true, ), 'fidry/cpu-core-counter' => array ( 'pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '8520451a140d3f46ac33042715115e290cf5785f', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../fidry/cpu-core-counter', 'aliases' => array ( ), 'dev_requirement' => true, ), 'filp/whoops' => array ( 'pretty_version' => '2.18.3', 'version' => '2.18.3.0', 'reference' => '59a123a3d459c5a23055802237cb317f609867e5', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../filp/whoops', 'aliases' => array ( ), 'dev_requirement' => true, ), 'friendsofphp/php-cs-fixer' => array ( 'pretty_version' => 'v3.84.0', 'version' => '3.84.0.0', 'reference' => '38dad0767bf2a9b516b976852200ae722fe984ca', 'type' => 'application', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../friendsofphp/php-cs-fixer', 'aliases' => array ( ), 'dev_requirement' => true, ), 'hamcrest/hamcrest-php' => array ( 'pretty_version' => 'v2.1.1', 'version' => '2.1.1.0', 'reference' => 'f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../hamcrest/hamcrest-php', 'aliases' => array ( ), 'dev_requirement' => true, ), 'jean85/pretty-package-versions' => array ( 'pretty_version' => '2.1.1', 'version' => '2.1.1.0', 'reference' => '4d7aa5dab42e2a76d99559706022885de0e18e1a', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../jean85/pretty-package-versions', 'aliases' => array ( ), 'dev_requirement' => true, ), 'kodova/hamcrest-php' => array ( 'dev_requirement' => true, 'replaced' => array ( 0 => '*', ), ), 'mockery/mockery' => array ( 'pretty_version' => '1.6.12', 'version' => '1.6.12.0', 'reference' => '1f4efdd7d3beafe9807b08156dfcb176d18f1699', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../mockery/mockery', 'aliases' => array ( ), 'dev_requirement' => true, ), 'myclabs/deep-copy' => array ( 'pretty_version' => '1.13.3', 'version' => '1.13.3.0', 'reference' => 'faed855a7b5f4d4637717c2b3863e277116beb36', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../myclabs/deep-copy', 'aliases' => array ( ), 'dev_requirement' => true, ), 'nikic/php-parser' => array ( 'pretty_version' => 'v5.5.0', 'version' => '5.5.0.0', 'reference' => 'ae59794362fe85e051a58ad36b289443f57be7a9', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../nikic/php-parser', 'aliases' => array ( ), 'dev_requirement' => true, ), 'nunomaduro/collision' => array ( 'pretty_version' => 'v8.8.2', 'version' => '8.8.2.0', 'reference' => '60207965f9b7b7a4ce15a0f75d57f9dadb105bdb', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../nunomaduro/collision', 'aliases' => array ( ), 'dev_requirement' => true, ), 'nunomaduro/termwind' => array ( 'pretty_version' => 'v2.3.1', 'version' => '2.3.1.0', 'reference' => 'dfa08f390e509967a15c22493dc0bac5733d9123', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../nunomaduro/termwind', 'aliases' => array ( ), 'dev_requirement' => true, ), 'pestphp/pest' => array ( 'pretty_version' => 'v3.8.2', 'version' => '3.8.2.0', 'reference' => 'c6244a8712968dbac88eb998e7ff3b5caa556b0d', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../pestphp/pest', 'aliases' => array ( ), 'dev_requirement' => true, ), 'pestphp/pest-plugin' => array ( 'pretty_version' => 'v3.0.0', 'version' => '3.0.0.0', 'reference' => 'e79b26c65bc11c41093b10150c1341cc5cdbea83', 'type' => 'composer-plugin', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../pestphp/pest-plugin', 'aliases' => array ( ), 'dev_requirement' => true, ), 'pestphp/pest-plugin-arch' => array ( 'pretty_version' => 'v3.1.1', 'version' => '3.1.1.0', 'reference' => 'db7bd9cb1612b223e16618d85475c6f63b9c8daa', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../pestphp/pest-plugin-arch', 'aliases' => array ( ), 'dev_requirement' => true, ), 'pestphp/pest-plugin-mutate' => array ( 'pretty_version' => 'v3.0.5', 'version' => '3.0.5.0', 'reference' => 'e10dbdc98c9e2f3890095b4fe2144f63a5717e08', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../pestphp/pest-plugin-mutate', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phar-io/manifest' => array ( 'pretty_version' => '2.0.4', 'version' => '2.0.4.0', 'reference' => '54750ef60c58e43759730615a392c31c80e23176', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phar-io/manifest', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phar-io/version' => array ( 'pretty_version' => '3.2.1', 'version' => '3.2.1.0', 'reference' => '4f7fd7836c6f332bb2933569e566a0d6c4cbed74', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phar-io/version', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpdocumentor/reflection-common' => array ( 'pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '1d01c49d4ed62f25aa84a747ad35d5a16924662b', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpdocumentor/reflection-common', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpdocumentor/reflection-docblock' => array ( 'pretty_version' => '5.6.2', 'version' => '5.6.2.0', 'reference' => '92dde6a5919e34835c506ac8c523ef095a95ed62', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpdocumentor/reflection-docblock', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpdocumentor/type-resolver' => array ( 'pretty_version' => '1.10.0', 'version' => '1.10.0.0', 'reference' => '679e3ce485b99e84c775d28e2e96fade9a7fb50a', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpdocumentor/type-resolver', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpstan/phpdoc-parser' => array ( 'pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => 'b9e61a61e39e02dd90944e9115241c7f7e76bfd8', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpstan/phpdoc-parser', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpstan/phpstan' => array ( 'pretty_version' => '2.1.18', 'version' => '2.1.18.0', 'reference' => 'ee1f390b7a70cdf74a2b737e554f68afea885db7', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpstan/phpstan', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpunit/php-code-coverage' => array ( 'pretty_version' => '11.0.10', 'version' => '11.0.10.0', 'reference' => '1a800a7446add2d79cc6b3c01c45381810367d76', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpunit/php-code-coverage', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpunit/php-file-iterator' => array ( 'pretty_version' => '5.1.0', 'version' => '5.1.0.0', 'reference' => '118cfaaa8bc5aef3287bf315b6060b1174754af6', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpunit/php-file-iterator', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpunit/php-invoker' => array ( 'pretty_version' => '5.0.1', 'version' => '5.0.1.0', 'reference' => 'c1ca3814734c07492b3d4c5f794f4b0995333da2', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpunit/php-invoker', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpunit/php-text-template' => array ( 'pretty_version' => '4.0.1', 'version' => '4.0.1.0', 'reference' => '3e0404dc6b300e6bf56415467ebcb3fe4f33e964', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpunit/php-text-template', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpunit/php-timer' => array ( 'pretty_version' => '7.0.1', 'version' => '7.0.1.0', 'reference' => '3b415def83fbcb41f991d9ebf16ae4ad8b7837b3', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpunit/php-timer', 'aliases' => array ( ), 'dev_requirement' => true, ), 'phpunit/phpunit' => array ( 'pretty_version' => '11.5.15', 'version' => '11.5.15.0', 'reference' => '4b6a4ee654e5e0c5e1f17e2f83c0f4c91dee1f9c', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../phpunit/phpunit', 'aliases' => array ( ), 'dev_requirement' => true, ), 'predis/predis' => array ( 'pretty_version' => 'v3.0.1', 'version' => '3.0.1.0', 'reference' => '34fb0a7da0330df1bab4280fcac4afdeeccc3edf', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../predis/predis', 'aliases' => array ( ), 'dev_requirement' => false, ), 'psr/container' => array ( 'pretty_version' => '2.0.2', 'version' => '2.0.2.0', 'reference' => 'c71ecc56dfe541dbd90c5360474fbc405f8d5963', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../psr/container', 'aliases' => array ( ), 'dev_requirement' => true, ), 'psr/event-dispatcher' => array ( 'pretty_version' => '1.0.0', 'version' => '1.0.0.0', 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../psr/event-dispatcher', 'aliases' => array ( ), 'dev_requirement' => true, ), 'psr/event-dispatcher-implementation' => array ( 'dev_requirement' => true, 'provided' => array ( 0 => '1.0', ), ), 'psr/http-message' => array ( 'pretty_version' => '2.0', 'version' => '2.0.0.0', 'reference' => '402d35bcb92c70c026d1a6a9883f06b2ead23d71', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../psr/http-message', 'aliases' => array ( ), 'dev_requirement' => false, ), 'psr/log' => array ( 'pretty_version' => '3.0.2', 'version' => '3.0.2.0', 'reference' => 'f16e1d5863e37f8d8c2a01719f5b34baa2b714d3', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../psr/log', 'aliases' => array ( ), 'dev_requirement' => true, ), 'psr/log-implementation' => array ( 'dev_requirement' => true, 'provided' => array ( 0 => '1.0|2.0|3.0', ), ), 'psr/simple-cache' => array ( 'pretty_version' => '3.0.0', 'version' => '3.0.0.0', 'reference' => '764e0b3939f5ca87cb904f570ef9be2d78a07865', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../psr/simple-cache', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/cache' => array ( 'pretty_version' => 'v1.2.0', 'version' => '1.2.0.0', 'reference' => 'd47c472b64aa5608225f47965a484b75c7817d5b', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/cache', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/child-process' => array ( 'pretty_version' => 'v0.6.6', 'version' => '0.6.6.0', 'reference' => '1721e2b93d89b745664353b9cfc8f155ba8a6159', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/child-process', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/dns' => array ( 'pretty_version' => 'v1.13.0', 'version' => '1.13.0.0', 'reference' => 'eb8ae001b5a455665c89c1df97f6fb682f8fb0f5', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/dns', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/event-loop' => array ( 'pretty_version' => 'v1.5.0', 'version' => '1.5.0.0', 'reference' => 'bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/event-loop', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/promise' => array ( 'pretty_version' => 'v3.2.0', 'version' => '3.2.0.0', 'reference' => '8a164643313c71354582dc850b42b33fa12a4b63', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/promise', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/socket' => array ( 'pretty_version' => 'v1.16.0', 'version' => '1.16.0.0', 'reference' => '23e4ff33ea3e160d2d1f59a0e6050e4b0fb0eac1', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/socket', 'aliases' => array ( ), 'dev_requirement' => true, ), 'react/stream' => array ( 'pretty_version' => 'v1.4.0', 'version' => '1.4.0.0', 'reference' => '1e5b0acb8fe55143b5b426817155190eb6f5b18d', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../react/stream', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/cli-parser' => array ( 'pretty_version' => '3.0.2', 'version' => '3.0.2.0', 'reference' => '15c5dd40dc4f38794d383bb95465193f5e0ae180', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/cli-parser', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/code-unit' => array ( 'pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '54391c61e4af8078e5b276ab082b6d3c54c9ad64', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/code-unit', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/code-unit-reverse-lookup' => array ( 'pretty_version' => '4.0.1', 'version' => '4.0.1.0', 'reference' => '183a9b2632194febd219bb9246eee421dad8d45e', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/code-unit-reverse-lookup', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/comparator' => array ( 'pretty_version' => '6.3.1', 'version' => '6.3.1.0', 'reference' => '24b8fbc2c8e201bb1308e7b05148d6ab393b6959', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/comparator', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/complexity' => array ( 'pretty_version' => '4.0.1', 'version' => '4.0.1.0', 'reference' => 'ee41d384ab1906c68852636b6de493846e13e5a0', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/complexity', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/diff' => array ( 'pretty_version' => '6.0.2', 'version' => '6.0.2.0', 'reference' => 'b4ccd857127db5d41a5b676f24b51371d76d8544', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/diff', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/environment' => array ( 'pretty_version' => '7.2.1', 'version' => '7.2.1.0', 'reference' => 'a5c75038693ad2e8d4b6c15ba2403532647830c4', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/environment', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/exporter' => array ( 'pretty_version' => '6.3.0', 'version' => '6.3.0.0', 'reference' => '3473f61172093b2da7de1fb5782e1f24cc036dc3', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/exporter', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/global-state' => array ( 'pretty_version' => '7.0.2', 'version' => '7.0.2.0', 'reference' => '3be331570a721f9a4b5917f4209773de17f747d7', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/global-state', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/lines-of-code' => array ( 'pretty_version' => '3.0.1', 'version' => '3.0.1.0', 'reference' => 'd36ad0d782e5756913e42ad87cb2890f4ffe467a', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/lines-of-code', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/object-enumerator' => array ( 'pretty_version' => '6.0.1', 'version' => '6.0.1.0', 'reference' => 'f5b498e631a74204185071eb41f33f38d64608aa', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/object-enumerator', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/object-reflector' => array ( 'pretty_version' => '4.0.1', 'version' => '4.0.1.0', 'reference' => '6e1a43b411b2ad34146dee7524cb13a068bb35f9', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/object-reflector', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/recursion-context' => array ( 'pretty_version' => '6.0.2', 'version' => '6.0.2.0', 'reference' => '694d156164372abbd149a4b85ccda2e4670c0e16', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/recursion-context', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/type' => array ( 'pretty_version' => '5.1.2', 'version' => '5.1.2.0', 'reference' => 'a8a7e30534b0eb0c77cd9d07e82de1a114389f5e', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/type', 'aliases' => array ( ), 'dev_requirement' => true, ), 'sebastian/version' => array ( 'pretty_version' => '5.0.2', 'version' => '5.0.2.0', 'reference' => 'c687e3387b99f5b03b6caa64c74b63e2936ff874', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../sebastian/version', 'aliases' => array ( ), 'dev_requirement' => true, ), 'staabm/side-effects-detector' => array ( 'pretty_version' => '1.0.5', 'version' => '1.0.5.0', 'reference' => 'd8334211a140ce329c13726d4a715adbddd0a163', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../staabm/side-effects-detector', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/console' => array ( 'pretty_version' => 'v7.3.1', 'version' => '7.3.1.0', 'reference' => '9e27aecde8f506ba0fd1d9989620c04a87697101', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/console', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/deprecation-contracts' => array ( 'pretty_version' => 'v3.6.0', 'version' => '3.6.0.0', 'reference' => '63afe740e99a13ba87ec199bb07bbdee937a5b62', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/deprecation-contracts', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/event-dispatcher' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => '497f73ac996a598c92409b44ac43b6690c4f666d', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/event-dispatcher', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/event-dispatcher-contracts' => array ( 'pretty_version' => 'v3.6.0', 'version' => '3.6.0.0', 'reference' => '59eb412e93815df44f05f342958efa9f46b1e586', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/event-dispatcher-contracts', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/event-dispatcher-implementation' => array ( 'dev_requirement' => true, 'provided' => array ( 0 => '2.0|3.0', ), ), 'symfony/filesystem' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => 'b8dce482de9d7c9fe2891155035a7248ab5c7fdb', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/filesystem', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/finder' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => 'ec2344cf77a48253bbca6939aa3d2477773ea63d', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/finder', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/options-resolver' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => 'afb9a8038025e5dbc657378bfab9198d75f10fca', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/options-resolver', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/polyfill-ctype' => array ( 'pretty_version' => 'v1.32.0', 'version' => '1.32.0.0', 'reference' => 'a3cc8b044a6ea513310cbd48ef7333b384945638', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/polyfill-ctype', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/polyfill-intl-grapheme' => array ( 'pretty_version' => 'v1.32.0', 'version' => '1.32.0.0', 'reference' => 'b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/polyfill-intl-grapheme', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/polyfill-intl-normalizer' => array ( 'pretty_version' => 'v1.32.0', 'version' => '1.32.0.0', 'reference' => '3833d7255cc303546435cb650316bff708a1c75c', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/polyfill-intl-normalizer', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/polyfill-mbstring' => array ( 'pretty_version' => 'v1.32.0', 'version' => '1.32.0.0', 'reference' => '6d857f4d76bd4b343eac26d6b539585d2bc56493', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/polyfill-mbstring', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/polyfill-php80' => array ( 'pretty_version' => 'v1.32.0', 'version' => '1.32.0.0', 'reference' => '0cc9dd0f17f61d8131e7df6b84bd344899fe2608', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/polyfill-php80', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/polyfill-php81' => array ( 'pretty_version' => 'v1.32.0', 'version' => '1.32.0.0', 'reference' => '4a4cfc2d253c21a5ad0e53071df248ed48c6ce5c', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/polyfill-php81', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/process' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => '40c295f2deb408d5e9d2d32b8ba1dd61e36f05af', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/process', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/service-contracts' => array ( 'pretty_version' => 'v3.6.0', 'version' => '3.6.0.0', 'reference' => 'f021b05a130d35510bd6b25fe9053c2a8a15d5d4', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/service-contracts', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/stopwatch' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => '5a49289e2b308214c8b9c2fda4ea454d8b8ad7cd', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/stopwatch', 'aliases' => array ( ), 'dev_requirement' => true, ), 'symfony/string' => array ( 'pretty_version' => 'v7.3.0', 'version' => '7.3.0.0', 'reference' => 'f3570b8c61ca887a9e2938e85cb6458515d2b125', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../symfony/string', 'aliases' => array ( ), 'dev_requirement' => true, ), 'ta-tikoma/phpunit-architecture-test' => array ( 'pretty_version' => '0.8.5', 'version' => '0.8.5.0', 'reference' => 'cf6fb197b676ba716837c886baca842e4db29005', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../ta-tikoma/phpunit-architecture-test', 'aliases' => array ( ), 'dev_requirement' => true, ), 'theseer/tokenizer' => array ( 'pretty_version' => '1.2.3', 'version' => '1.2.3.0', 'reference' => '737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../theseer/tokenizer', 'aliases' => array ( ), 'dev_requirement' => true, ), 'webmozart/assert' => array ( 'pretty_version' => '1.11.0', 'version' => '1.11.0.0', 'reference' => '11cb2199493b2f8a3b53e7f19068fc6aac760991', 'type' => 'library', 'install_path' => '/home/michael/dev/michaelschiemer/vendor/composer/../webmozart/assert', 'aliases' => array ( ), 'dev_requirement' => true, ), ), ), ), 'executedFilesHashes' => array ( '/home/michael/dev/michaelschiemer/tests/bootstrap.php' => 'd7f863150f3af677a210ad671561ea3c0ec6af21', 'phar:///home/michael/dev/michaelschiemer/vendor/phpstan/phpstan/phpstan.phar/stubs/runtime/Attribute.php' => 'eaf9127f074e9c7ebc65043ec4050f9fed60c2bb', 'phar:///home/michael/dev/michaelschiemer/vendor/phpstan/phpstan/phpstan.phar/stubs/runtime/ReflectionAttribute.php' => '0b4b78277eb6545955d2ce5e09bff28f1f8052c8', 'phar:///home/michael/dev/michaelschiemer/vendor/phpstan/phpstan/phpstan.phar/stubs/runtime/ReflectionIntersectionType.php' => 'a3e6299b87ee5d407dae7651758edfa11a74cb11', 'phar:///home/michael/dev/michaelschiemer/vendor/phpstan/phpstan/phpstan.phar/stubs/runtime/ReflectionUnionType.php' => '1b349aa997a834faeafe05fa21bc31cae22bf2e2', ), 'phpExtensions' => array ( 0 => 'Core', 1 => 'FFI', 2 => 'PDO', 3 => 'Phar', 4 => 'Reflection', 5 => 'SPL', 6 => 'SimpleXML', 7 => 'Zend OPcache', 8 => 'apcu', 9 => 'bcmath', 10 => 'calendar', 11 => 'ctype', 12 => 'curl', 13 => 'date', 14 => 'dom', 15 => 'exif', 16 => 'fileinfo', 17 => 'filter', 18 => 'ftp', 19 => 'gd', 20 => 'gettext', 21 => 'hash', 22 => 'iconv', 23 => 'igbinary', 24 => 'intl', 25 => 'json', 26 => 'libxml', 27 => 'mbstring', 28 => 'mysqli', 29 => 'mysqlnd', 30 => 'openssl', 31 => 'pcntl', 32 => 'pcre', 33 => 'pdo_mysql', 34 => 'pdo_sqlite', 35 => 'posix', 36 => 'random', 37 => 'readline', 38 => 'redis', 39 => 'session', 40 => 'shmop', 41 => 'sockets', 42 => 'sodium', 43 => 'sqlite3', 44 => 'standard', 45 => 'sysvmsg', 46 => 'sysvsem', 47 => 'sysvshm', 48 => 'tokenizer', 49 => 'xml', 50 => 'xmlreader', 51 => 'xmlwriter', 52 => 'xsl', 53 => 'zip', 54 => 'zlib', ), 'stubFiles' => array ( ), 'level' => '8', ), 'projectExtensionFiles' => array ( '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php' => array ( 0 => 'e2b0f8f455c96288a0b107e1cda9eceb582db0ce', 1 => true, 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\PreferValueObjectsRule', ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php' => array ( 0 => '0de6940d93c49bc6090af857b5599fe83806d065', 1 => true, 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseFrameworkAbstractionsRule', ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php' => array ( 0 => '74fe3b3b1b4ab66f6fa8cd6dfad343b531b51f07', 1 => true, 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\ForbiddenFunctionsRule', ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php' => array ( 0 => 'a356d5cd672fd8942c1843fb74137a3dd9723913', 1 => true, 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseClockAbstractionRule', ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php' => array ( 0 => '038a81ab81722c6e9ab8e71c987f8cddd20e749a', 1 => true, 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseTimerAbstractionRule', ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php' => array ( 0 => '7dfb9d1d6dc32ea763e67a90a5363c97bafe3d18', 1 => true, 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseDateTimeAbstractionRule', ), ), 'errorsCallback' => static function (): array { return array ( '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::getMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::getDriverMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::getDriverMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::resetMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::resetMetricsGet() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::getSummary() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'If condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Stmt\\If_', 'identifier' => 'if.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\CacheMetricsController::getHealthStatus() has parameter $stats with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Admin\\Dashboard::$config is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 221, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 221, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 236, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\Dashboard::getMemoryLimitInBytes() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 318, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\SessionManager::getActiveSessionCount().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'line' => 363, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 363, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Admin\\HealthController::getHealthSummary() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $id of method App\\Domain\\Media\\ImageSlotRepository::findById() expects string, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Admin\\ShowImageUpload::$stringConverter is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $hash of method App\\Domain\\Media\\ImageRepository::findByHash() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot use array destructuring on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\Assign', 'identifier' => 'offsetAccess.nonArray', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $hash of class App\\Domain\\Media\\Image constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\AnalyticsController::getBusinessMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\AnalyticsController::getBusinessMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\AnalyticsController::getRealTimeData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 231, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 232, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\AnalyticsController::getRealTimeData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 235, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 251, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 251, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 290, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\AnalyticsController::exportData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 301, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\AnalyticsController::exportData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 309, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 344, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsDashboardService::getTopPages() should return array but returns list>.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Analytics\\Service\\AnalyticsRealTimeService::$storage is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsRealTimeService::getRealTimeData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsRealTimeService::getRecentActions() should return array but returns list.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 'traitFilePath' => NULL, 'tip' => 'Array does not have offset \'user\'.', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsReportService::getBusinessMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsReportService::getBusinessMetricsArray() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsReportService::exportData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsReportService::exportData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Analytics\\Service\\AnalyticsReportService::getFunnelData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 188, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Application\\Auth\\LoginRequest has an uninitialized readonly property $email. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Application\\Auth\\LoginRequest has an uninitialized readonly property $password. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Router\\Result\\ViewResult constructor invoked with 1 parameter, 2-7 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Contact\\StoreContactHandler::$contactRepository is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $allComponents might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 378, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 378, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 381, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 381, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 483, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 483, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 486, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 486, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 486, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 486, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 521, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 521, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 521, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 521, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $component might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'line' => 522, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 522, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Application\\EPK\\MetaData not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metaData of class App\\Framework\\Router\\Result\\ViewResult constructor expects App\\Framework\\Meta\\MetaData, App\\Application\\EPK\\MetaData given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\GraphQL\\UserResolvers::userStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\GraphQL\\UserService::getUserStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function max expects non-empty-array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php', 'traitFilePath' => NULL, 'tip' => 'list might be empty.', 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Health\\HealthCheckController::checkPhp() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Health\\HealthCheckController::checkDatabase() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Health\\HealthCheckController::checkDatabase() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Health\\HealthCheckController::checkRedis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 169, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Health\\HealthCheckController::checkFilesystem() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Health\\HealthCheckController::checkMemory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\Json\\JsonSerializer::serialize() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\Json\\JsonSerializer::serialize() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\ChatController::handleChatMessage() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\ChatController::broadcast() has parameter $message with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\NotificationController::getUserNotifications() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\QrCodeController::generateDataUri() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\QrCodeController::generateDataUri() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\QrCodeController::analyzeData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\QrCodeController::analyzeData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Http\\Controllers\\QrCodeController::analyzeData() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function sleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\Json\\JsonSerializer::serializeWithConfig() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Http\\Smartlink::$handler is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$parsedBody (App\\Framework\\Http\\RequestBody) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Smartlinks\\Actions\\SmartlinkAction::getErrorTemplate().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Smartlinks\\Actions\\SmartlinkAction::getViewTemplate().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Media\\MediaCleanupService::cleanupUnusedFiles() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Media\\MediaCleanupService::cleanupEmptyDirectories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function rmdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Media\\MediaCleanupService::createImageVariants() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Media\\MediaCleanupService::fullCleanup() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function gmdate() is forbidden: Use Clock::now()->setTimezone() and format() instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function gmdate expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function gmdate() is forbidden: Use Clock::now()->setTimezone() and format() instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $fileSize of static method App\\Framework\\Http\\Streaming\\RangeParser::parseRange() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $fileSize of class App\\Framework\\Http\\Responses\\StreamResponse constructor expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Metrics\\MetricsController::metrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant RAPIDMAIL_USERNAME on an unknown class App\\Application\\Newsletter\\SignUp\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant RAPIDMAIL_PASSWORD on an unknown class App\\Application\\Newsletter\\SignUp\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method getRapidmailListId() on an unknown class App\\Application\\Newsletter\\SignUp\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Application\\Newsletter\\SignUp\\NewsletterSignupRequest has an uninitialized readonly property $email. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Application\\Newsletter\\SignUp\\NewsletterSignupRequest has an uninitialized readonly property $name. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Application\\Newsletter\\SignUp\\NewsletterSignupRequest has an uninitialized readonly property $consent. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getSummary() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getSummary() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getReport() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getReport() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getRequestStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getRequestStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::resetMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::resetMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $value of static method App\\Framework\\Core\\ValueObjects\\Byte::parse() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $value of static method App\\Framework\\Core\\ValueObjects\\Byte::parse() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $value of static method App\\Framework\\Core\\ValueObjects\\Byte::parse() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $value of static method App\\Framework\\Core\\ValueObjects\\Byte::parse() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::getMemoryStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::exportMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 231, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Performance\\Http\\Controller\\PerformanceController::exportMetrics() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 235, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 293, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 336, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Search\\SearchController::getStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 361, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 361, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Search\\SearchController::getStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 370, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 370, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Search\\SearchController::getIndexStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 394, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 394, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Search\\SearchController::getIndexStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 403, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 403, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Search\\SearchController::getIndexStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 412, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 412, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'line' => 459, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 459, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getBool().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getInt().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getInt().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getInt().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getInt().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strtolower expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getBool().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getBool().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getBool().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::getFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $query of class App\\Application\\Search\\SearchRequest constructor expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_numeric() with float will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $email of class App\\Application\\Security\\Events\\Authorization\\AccessDeniedEvent constructor expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method Symfony\\Component\\Finder\\Exception\\AccessDeniedException::getResource().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method Symfony\\Component\\Finder\\Exception\\AccessDeniedException::getAction().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method Symfony\\Component\\Finder\\Exception\\AccessDeniedException::getRequiredPermission().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Exceptions\\ValidationException::getInvalidValue() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Guards\\AuthenticationGuard::authenticate() never returns App\\Domain\\User\\User so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Application\\Security\\Guards\\AuthenticationGuard::isAccountLocked() expects App\\Domain\\User\\User, App\\Framework\\Database\\Example\\User given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Example\\User::$failed_attempts.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Example\\User::$password_hash.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Application\\Security\\Guards\\AuthenticationGuard::handleFailedAttempt() expects App\\Domain\\User\\User, App\\Framework\\Database\\Example\\User given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Application\\Security\\Guards\\AuthenticationGuard::handleSuccessfulLogin() expects App\\Domain\\User\\User, App\\Framework\\Database\\Example\\User given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Guards\\AuthenticationGuard::authenticate() should return App\\Domain\\User\\User|null but returns App\\Framework\\Database\\Example\\User.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$email.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $sessionId of class App\\Application\\Security\\Events\\Auth\\SessionTerminatedEvent constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$failed_attempts.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$last_login.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$email.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $sessionId of class App\\Application\\Security\\Events\\Auth\\AuthenticationSuccessEvent constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$failed_attempts.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$failed_attempts.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$last_failed_attempt.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$locked_until.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$email.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$email.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Domain\\User\\User::$locked_until.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Middleware\\SecurityEventMiddleware::checkRateLimit() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Middleware\\SecurityEventMiddleware::validateCsrfToken() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Middleware\\SecurityEventMiddleware::analyzeResponse() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining values: App\\Application\\Security\\SecurityEventType::ADMIN_ACTION|App\\Application\\Security\\SecurityEventType::CONFIG_CHANGED|App\\Application\\Security\\SecurityEventType::CSRF_VIOLATION|App\\Application\\Security\\SecurityEventType::EMAIL_CHANGED|App\\Application\\Security\\SecurityEventType::LOGIN_SUCCEEDED|App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGED|App\\Application\\Security\\SecurityEventType::USER_DELETED', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::LOGIN_SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGE.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::ACCOUNT_LOCKED.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::PRIVILEGE_ESCALATION.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::DATA_ACCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::INJECTION_ATTEMPT.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::FILE_UPLOAD.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::SESSION_HIJACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::SESSION_TIMEOUT.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::MALWARE_DETECTED.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::AUDIT_FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $resource of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::authorizationFailure() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $fromRole of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::privilegeEscalation() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $toRole of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::privilegeEscalation() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\OWASPSecurityEventFactory::createDataAccessIdentifier() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $field of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::inputValidationFailure() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $attackType of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::maliciousInput() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $filename of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::fileUploadFailure() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $malwareType of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::malwareDetected() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 179, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $eventType of static method App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier::auditFailure() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining values: App\\Application\\Security\\SecurityEventType::ADMIN_ACTION|App\\Application\\Security\\SecurityEventType::CONFIG_CHANGED|App\\Application\\Security\\SecurityEventType::CSRF_VIOLATION|App\\Application\\Security\\SecurityEventType::EMAIL_CHANGED|App\\Application\\Security\\SecurityEventType::LOGIN_SUCCEEDED|App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGED|App\\Application\\Security\\SecurityEventType::USER_DELETED', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::LOGIN_SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGE.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::ACCOUNT_LOCKED.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::PRIVILEGE_ESCALATION.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::DATA_ACCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 199, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 199, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::INJECTION_ATTEMPT.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::FILE_UPLOAD.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::SESSION_HIJACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::SESSION_TIMEOUT.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 203, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::MALWARE_DETECTED.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::AUDIT_FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\OWASPSecurityEventFactory::buildDetectionMetadata() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\OWASPSecurityEventFactory::buildDetectionMetadata() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 274, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $sessionId of class App\\Application\\Security\\SecurityContext constructor expects string|null, App\\Framework\\Http\\Session\\SessionId|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method createFromSecurityEvent() on App\\Application\\Security\\OWASPSecurityEventFactory|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\SecurityEventLogger::extractPayload() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Services\\FileUploadSecurityService::validateUpload() has parameter $file with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $mimeType of method App\\Application\\Security\\Services\\FileUploadSecurityService::dispatchSuspiciousUpload() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $mimeType of method App\\Application\\Security\\Services\\FileUploadSecurityService::dispatchSuspiciousUpload() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $mimeType of method App\\Application\\Security\\Services\\FileUploadSecurityService::dispatchSuspiciousUpload() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Services\\InputValidationService::validateInput() has parameter $rules with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\Services\\InputValidationService::sanitizeInput() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\ValueObjects\\OWASPLogFormat::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::LOGIN_SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGE.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between App\\Application\\Security\\SecurityEventType::ADMIN_ACTION|App\\Application\\Security\\SecurityEventType::CONFIG_CHANGED|App\\Application\\Security\\SecurityEventType::CSRF_VIOLATION|App\\Application\\Security\\SecurityEventType::EMAIL_CHANGED|App\\Application\\Security\\SecurityEventType::LOGIN_SUCCEEDED|App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGED|App\\Application\\Security\\SecurityEventType::USER_DELETED and App\\Application\\Security\\SecurityEventType::LOGIN_FAILED is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between App\\Application\\Security\\SecurityEventType::ADMIN_ACTION|App\\Application\\Security\\SecurityEventType::CONFIG_CHANGED|App\\Application\\Security\\SecurityEventType::CSRF_VIOLATION|App\\Application\\Security\\SecurityEventType::EMAIL_CHANGED|App\\Application\\Security\\SecurityEventType::LOGIN_SUCCEEDED|App\\Application\\Security\\SecurityEventType::PASSWORD_CHANGED|App\\Application\\Security\\SecurityEventType::USER_DELETED and App\\Application\\Security\\SecurityEventType::ACCESS_DENIED is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::SESSION_TIMEOUT.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::INJECTION_ATTEMPT.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::MALWARE_DETECTED.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::ACCOUNT_LOCKED.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::FILE_UPLOAD.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::PRIVILEGE_ESCALATION.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::SESSION_HIJACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Application\\Security\\SecurityEventType::AUDIT_FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Waf\\LayerResult and App\\Framework\\Waf\\LayerResult will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\WafEventProcessor::createRequestContext() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Application\\Security\\ValueObjects\\RequestContext via private constructor App\\Application\\Security\\ValueObjects\\RequestContext::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $geo (string|null) in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $hostIp (string|null) in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $hostname (string|null) in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $port (string|null) in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $protocol (string|null) in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $region (string|null) in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $clientIp in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $userAgent in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $userEmail in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $sessionId in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $timestamp in call to App\\Application\\Security\\ValueObjects\\RequestContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\WafEventProcessor::createSecurityContext() has parameter $securityData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Application\\Security\\ValueObjects\\SecurityContext via private constructor App\\Application\\Security\\ValueObjects\\SecurityContext::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $requestId (string|null) in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sessionId (string|null) in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sourceIp (string|null) in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $timestamp (DateTimeImmutable) in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $userAgent (string|null) in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $userRole in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $authenticationStatus in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $securityLevel in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $sessionMetadata in call to App\\Application\\Security\\ValueObjects\\SecurityContext constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\WafEventProcessor::getProcessingStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\WafEventProcessor::getProcessingStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Http\\HttpRequest::$user.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->id" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between App\\Framework\\Waf\\Feedback\\FeedbackType::CORRECT_DETECTION and App\\Framework\\Waf\\Feedback\\FeedbackType::CORRECT_DETECTION is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Security\\WafFeedbackController::getFeedbackStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Security\\WafFeedbackDashboardController::$feedbackService is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metaData of class App\\Framework\\Router\\Result\\ViewResult constructor expects App\\Framework\\Meta\\MetaData, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metaData of class App\\Framework\\Router\\Result\\ViewResult constructor expects App\\Framework\\Meta\\MetaData, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metaData of class App\\Framework\\Router\\Result\\ViewResult constructor expects App\\Framework\\Meta\\MetaData, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metaData of class App\\Framework\\Router\\Result\\ViewResult constructor expects App\\Framework\\Meta\\MetaData, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\OWASPSecurityEventLogger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getUserEmail().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getUserEmail().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $attackPattern (string) in call to App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $fieldName (string) in call to App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sanitizedValue (string) in call to App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $inputPayload in call to App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $inputType in call to App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $detectionMethod in call to App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getUserEmail().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getUserEmail().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getClientIp().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getUserEmail().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getClientIp().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $fieldName (string) in call to App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $invalidValue (string) in call to App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $validationRule (string) in call to App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $field in call to App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $reason in call to App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $attemptedValue in call to App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Application\\Security\\ValueObjects\\RequestContext::getUserEmail().', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $generator of method App\\Application\\Service\\QrCodeService::__construct() has invalid type App\\Domain\\QrCode\\Service\\QrCodeGenerator.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Service\\QrCodeService::$generator has unknown class App\\Domain\\QrCode\\Service\\QrCodeGenerator as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant M on an unknown class App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generateQrCode() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generateQrCode() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Service\\QrCodeService::generateQrCode() has invalid return type App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Service\\QrCodeService::generateQrCode() has invalid return type App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Domain\\QrCode\\ValueObject\\QrCodeVersion not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Domain\\QrCode\\QrCode not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method generate() on an unknown class App\\Domain\\QrCode\\Service\\QrCodeGenerator.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant M on an unknown class App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generateSvg() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generateSvg() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $config of method App\\Application\\Service\\QrCodeService::generateSvg() has invalid type App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $config of method App\\Application\\Service\\QrCodeService::generateSvg() has invalid type App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method toSvg() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getModuleSize() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getMargin() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getForegroundColor() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getBackgroundColor() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant M on an unknown class App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generatePng() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generatePng() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $config of method App\\Application\\Service\\QrCodeService::generatePng() has invalid type App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $config of method App\\Application\\Service\\QrCodeService::generatePng() has invalid type App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method toPng() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getModuleSize() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getMargin() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant M on an unknown class App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generateAscii() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $errorLevel of method App\\Application\\Service\\QrCodeService::generateAscii() has invalid type App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method toAscii() on an unknown class App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_SHOP_DOMAIN on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_ACCESS_TOKEN on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_API_VERSION on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_SHOP_DOMAIN on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_ACCESS_TOKEN on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_API_VERSION on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Shopify\\ProductRequest::__construct() has parameter $images with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Shopify\\ProductRequest::__construct() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Shopify\\ProductRequest::__construct() has parameter $variants with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_SHOP_DOMAIN on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_ACCESS_TOKEN on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SHOPIFY_API_VERSION on an unknown class Archive\\Config\\ApiConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Config\\External\\ShopifyConfig::$webhookSecret.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Shopify\\ShopifyWebhookHandler::processOrderCreated() has parameter $orderData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Shopify\\ShopifyWebhookHandler::processProductUpdate() has parameter $productData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Shopify\\ShopifyWebhookHandler::processCustomerCreated() has parameter $customerData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method default() on an unknown class App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 280, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector constructor invoked with 0 parameters, 1-13 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 'line' => 317, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 317, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\User\\UserService::getStats() returns an array but should consider using a Value Object for better type safety and domain modeling', 'file' => '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php', 'traitFilePath' => NULL, 'tip' => 'Create a dedicated Value Object class instead of returning raw arrays', 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Webhook\\Controller\\LegalWebhookController::$eventDispatcher is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Webhook\\Controller\\LegalWebhookController::receiveLegalUpdate() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Http\\Responses\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\EventBus\\Attributes\\OnEvent does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $provider of method App\\Framework\\Webhook\\Events\\WebhookReceived::isFromProvider() expects App\\Framework\\Webhook\\ValueObjects\\WebhookProvider, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Application\\Webhook\\Controller\\LegalWebhookController::notifyLegalUpdate() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Http\\Responses\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$clock is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$dateTimeFormatter is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$entityManager is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$cache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$connection is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$urlGenerator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Application\\Website\\ShowHome::$imageRepository is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\AI\\AiQuery::__construct() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/Email.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/Email.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/Email.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_starts_with expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function chunk_split expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 168, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function chunk_split expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $red of class App\\Domain\\Common\\ValueObject\\RGBColor constructor expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $green of class App\\Domain\\Common\\ValueObject\\RGBColor constructor expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $blue of class App\\Domain\\Common\\ValueObject\\RGBColor constructor expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\GdImageProcessor::createVariant() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $format in PHPDoc tag @var does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.variableNotFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $size in PHPDoc tag @var does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.variableNotFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $fileSize of class App\\Domain\\Media\\ImageVariant constructor expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $width of function imagecreatetruecolor expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $height of function imagecreatetruecolor expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #6 $color of function imagefilledrectangle expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 154, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\GdImageProcessor::createImageFromFile() should return GdImage but returns GdImage|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Domain\\Media\\Image has an uninitialized readonly property $variants. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $image on object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageRepository::findById() should return App\\Domain\\Media\\Image|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageRepository::findByFilename() should return App\\Domain\\Media\\Image|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageRepository::findByHash() should return App\\Domain\\Media\\Image|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageRepository::findByUlid() should return App\\Domain\\Media\\Image|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Domain\\Media\\Image::$altText is assigned outside of its declaring class.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignOutOfClass', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Domain\\Media\\Image::$filename is assigned outside of its declaring class.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignOutOfClass', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $width of function imagecreatetruecolor expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $height of function imagecreatetruecolor expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $size (string) in call to App\\Domain\\Media\\ImageVariant constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $fileSize of class App\\Domain\\Media\\ImageVariant constructor expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageResizer::createImageFromFile() should return GdImage but returns GdImage|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageResizer::saveImage() has parameter $image with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Domain\\Media\\ImageSlot has an uninitialized readonly property $image. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSlotRepository::getSlots() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSlotRepository::findBySlotName() should return App\\Domain\\Media\\ImageSlot but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSlotRepository::findById() should return App\\Domain\\Media\\ImageSlot but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $image of static method App\\Domain\\Media\\ImageSlotView::fromSlot() expects App\\Domain\\Media\\Image|null, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$imageId.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $slot of static method App\\Domain\\Media\\ImageSlotView::fromSlot() expects App\\Domain\\Media\\ImageSlot, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $image of static method App\\Domain\\Media\\ImageSlotView::fromSlot() expects App\\Domain\\Media\\Image|null, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSourceSetGenerator::generatePictureElement() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSourceSetGenerator::generateSourceElement() has parameter $variants with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSourceSetGenerator::generateImgTag() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSourceSetGenerator::groupVariantsByFormat() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageSourceSetGenerator::getFallbackImage() has parameter $variantsByFormat with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageVariantConfig::getAllVariants() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageVariantConfig::getVariantsForType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageVariantRepository::findByFilename() should return App\\Domain\\Media\\ImageVariant|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImageVariantType::getSizes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Media\\ImagickImageProcessor::createVariant() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $format in PHPDoc tag @var does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.variableNotFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $size in PHPDoc tag @var does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.variableNotFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $fileSize of class App\\Domain\\Media\\ImageVariant constructor expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method Imagick::autoOrientImage().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/SaveImageFile.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Media/SaveImageFile.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Media/SaveImageFile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function str_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Entity\\MetaEntry::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\RenderContext::setMeta().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::setAttribute().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Http\\Middleware\\MetaMiddleware::extractContextFromRequest() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getRouteParameters().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getQueryParams().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getAttribute().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::getHeader().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::getBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::getBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::setBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::setBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::setBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\Min does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\Required does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Domain\\Meta\\Http\\Request\\MetaRequest::$keywords type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\Url does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\Url does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\MaxLength does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Domain\\Meta\\Http\\Request\\MetaRequest::$customMeta type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\Min does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Validation\\Attributes\\Max does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Stmt\\Property', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Http\\Request\\MetaRequest::getKeywordsAsArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'If condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Stmt\\If_', 'identifier' => 'if.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Interface/MetaAware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Interface\\MetaAware::getMetaKeywords() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Interface/MetaAware.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Interface/MetaAware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\DatabaseMetaRepository::findAllByRoute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toArray() on App\\Domain\\Meta\\ValueObject\\MetaData|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method format() on DateTimeImmutable|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method format() on DateTimeImmutable|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toArray() on App\\Domain\\Meta\\ValueObject\\MetaData|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\DatabaseMetaRepository::findAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\DatabaseMetaRepository::search() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 196, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method fetchColumn() on PDOStatement|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 223, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\DatabaseMetaRepository::hydrateFromRow() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 258, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 282, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 282, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 282, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 282, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\MetaRepositoryInterface::findAllByRoute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\MetaRepositoryInterface::findAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Repository\\MetaRepositoryInterface::search() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $cache of method App\\Domain\\Meta\\Service\\MetaManager::__construct() has invalid type App\\Framework\\Cache\\CacheInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Domain\\Meta\\Service\\MetaManager::$cache has unknown class App\\Framework\\Cache\\CacheInterface as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaManager::resolveForRequest() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method get() on an unknown class App\\Framework\\Cache\\CacheInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Domain\\Meta\\ValueObject\\MetaData::merge() expects App\\Domain\\Meta\\ValueObject\\MetaData, App\\Domain\\Meta\\ValueObject\\MetaData|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Domain\\Meta\\ValueObject\\MetaData::merge() expects App\\Domain\\Meta\\ValueObject\\MetaData, App\\Domain\\Meta\\ValueObject\\MetaData|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method set() on an unknown class App\\Framework\\Cache\\CacheInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaManager::resolveForRoute() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Domain\\Meta\\ValueObject\\MetaData::merge() expects App\\Domain\\Meta\\ValueObject\\MetaData, App\\Domain\\Meta\\ValueObject\\MetaData|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaManager::resolveForEntity() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Domain\\Meta\\ValueObject\\MetaData::merge() expects App\\Domain\\Meta\\ValueObject\\MetaData, App\\Domain\\Meta\\ValueObject\\MetaData|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteByPattern() on an unknown class App\\Framework\\Cache\\CacheInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteByPattern() on an unknown class App\\Framework\\Cache\\CacheInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getUri().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getRouteParameters().', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::resolve() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::resolveTemplate() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace_callback expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::resolveCustomMeta() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::resolveCustomMeta() has parameter $customMeta with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::resolveCustomMeta() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::getNestedValue() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::validateTemplate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\Service\\MetaTemplateResolver::extractPlaceholders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 1 on array{list, list} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 2 on array{list, list, list} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\ValueObject\\MetaData::__construct() has parameter $customMeta with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\ValueObject\\MetaData::__construct() has parameter $keywords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\ValueObject\\MetaData::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Domain\\Meta\\ValueObject\\MetaData::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Domain/ValueObjects/EmailAddress.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $length of function substr expects int|null, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Domain/ValueObjects/EmailAddress.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Domain/ValueObjects/EmailAddress.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::trackAction() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::trackPageView() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::trackError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::trackBusinessEvent() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::trackApiCall() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 196, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::getCounters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 269, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::getSessionId() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 302, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function setcookie() is forbidden: Use Cookie abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsCollector::storeAggregatedData() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 320, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\AnalyticsConfig::__construct() has parameter $sensitiveKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Events\\BusinessEvent::__construct() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and -1 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Analytics\\Events\\BusinessEvent::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Events\\PageView::__construct() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and -1 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Analytics\\Events\\PageView::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Events\\SecurityEvent::__construct() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and -1 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Analytics\\Events\\SecurityEvent::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Events\\UserAction::__construct() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and -1 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Analytics\\Events\\UserAction::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener::sanitizeProperties() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener::sanitizeProperties() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with string|null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on *NEVER* on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$queryParams (array) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $referer of class App\\Framework\\Analytics\\Events\\PageView constructor expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$queryParams (array) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\AnalyticsStorage::storeAggregated() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\AnalyticsStorage::storeRawData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\AnalyticsStorage::getAggregated() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\AnalyticsStorage::getTopList() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\AnalyticsStorage::getTimeSeries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::$aggregatedData type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::$rawDataBuffer type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::$performanceCollector is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::exists().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::createDirectory().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::storeAggregated() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::storeRawData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::getAggregated() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::getTopList() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage::getTimeSeries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 136, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 164, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::listDirectory().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::lastModified().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 203, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 221, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 221, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 239, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::listDirectory().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::exists().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 269, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\AtomicStorage|App\\Framework\\Filesystem\\Storage::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 288, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Api\\ApiException::getResponseData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncBarrier::$waitingFibers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncBarrier::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncChannel::$waitingSenders with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncChannel::$waitingReceivers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncChannel::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Anonymous function has an unused use $id.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\Closure', 'identifier' => 'closure.unusedUse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncEventLoop::nextTick() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncEventLoop::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncMutex::$waitingFibers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncMutex::$owner (string|null) is never assigned string so it can be removed from the property type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $object of function spl_object_id expects object, Fiber|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncMutex::$owner (string|null) does not accept int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncMutex::$owner (string|null) does not accept int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $object of function spl_object_id expects object, Fiber|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncMutex::$owner (string|null) does not accept int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $object of function spl_object_id expects object, Fiber|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between string|null and int will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncMutex::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::readFile() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::writeFile() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::listDirectory() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::httpRequest() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::httpRequest() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::databaseQuery() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::databaseQuery() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::sleep() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::sleepDuration() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::measureExecution() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncOperationFactory::withTimeout() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncPool::$activeFibers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $value of method SplQueue::enqueue() expects callable(): mixed, array{id: string, operation: callable(): mixed} given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncPool::execute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'id\' on callable(): mixed.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'operation\' on callable(): mixed.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncPool::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncPromise::all() has parameter $promises with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncPromise::race() has parameter $promises with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Negated boolean expression is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\BooleanNot', 'identifier' => 'booleanNot.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncPromise::$thenCallbacks (array) does not accept non-empty-array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncPromise::$finallyCallbacks (array) does not accept non-empty-array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncPromise::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncQueue::$waitingConsumers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncQueue::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncScheduler::$jobs type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncScheduler::start() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function sleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncScheduler::shouldRun() has parameter $job with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 133, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncScheduler::executeJob() has parameter $job with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncScheduler::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 185, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncSemaphore::$waitingFibers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncSemaphore::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\AsyncService::$timer is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::async() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::parallel() has parameter $operations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::delay() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::waitFor() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::batch() has parameter $operations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::batch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncService::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncStream::fromArray() has parameter $items with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $microseconds of function usleep expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncStream::collect() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncStream::reduce() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncStream::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncTimer::start() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncTimer::sleep() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncTimer::sleepDuration() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncTimer::waitFor() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncTimer::waitForDuration() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\AsyncTimer::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 272, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJob::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJob::__construct() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJob::create() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJob::create() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJob::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJobProcessor::start() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\BackgroundJobProcessor::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\Contracts\\AsyncOperation::executeAsync() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Async\\FiberManager::$runningFibers with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::async() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::asyncGenerator() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::waitForAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::combine() has parameter $fibers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 212, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::combine() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::sequence() has parameter $operations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 229, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::sequence() return type with generic class Fiber does not specify its types: TStart, TResume, TReturn, TSuspend', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 229, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Async\\FiberManager::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 286, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor::$config is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function str_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function str_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 226, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 230, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor::processSassVariables() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'While loop condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 300, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 300, 'nodeType' => 'PHPStan\\Node\\BreaklessWhileLoopNode', 'identifier' => 'while.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function sleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 316, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $operations of method App\\Framework\\Async\\FiberManager::batch() expects array, non-empty-array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Database\\AsyncDatabase::__construct() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\AsyncExamples\\Database\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $operations of method App\\Framework\\Async\\FiberManager::batch() expects array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::__construct() has parameter $defaultOptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::get() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::get() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::post() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::post() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::put() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::put() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::delete() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::delete() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::request() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::request() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $http_response_header on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $http_response_header on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::createContext() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient::createContext() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->statusCode" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->headers" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\AsyncMailer::__construct() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Async\\FiberManager constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\AsyncMailer::sendMultiple() should return array but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $operations of method App\\Framework\\Async\\FiberManager::batch() expects array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mail() is forbidden: Use Mailer abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\Email::__construct() has parameter $attachments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\Email::__construct() has parameter $bcc with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\Email::__construct() has parameter $cc with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\Email::withCc() has parameter $cc with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\AsyncExamples\\Mail\\Email::withBcc() has parameter $bcc with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Attributes\\Route::toCompiledRoute() has invalid return type App\\Framework\\Attributes\\CompiledRoute.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Attributes\\CompiledRoute not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/StaticPage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class Attribute constructor invoked with 2 parameters, 0-1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/StaticPage.php', 'line' => 10, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/StaticPage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Constant App\\Framework\\Auth\\AuthenticationService::RATE_LIMIT_WINDOW is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-used-class-constants', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassConstantsNode', 'identifier' => 'classConstant.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $repository of method App\\Framework\\Auth\\AuthenticationService::__construct() has invalid type App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Auth\\AuthenticationService::$repository has unknown class App\\Framework\\Auth\\AuthenticationRepository as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rateLimiter of method App\\Framework\\Auth\\AuthenticationService::__construct() has invalid type App\\Framework\\Auth\\RateLimitService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Auth\\AuthenticationService::$rateLimiter has unknown class App\\Framework\\Auth\\RateLimitService as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::authenticate() has invalid return type App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method isRateLimited() on an unknown class App\\Framework\\Auth\\RateLimitService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method rateLimited() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getRetryAfter() on an unknown class App\\Framework\\Auth\\RateLimitService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method findUserByIdentifier() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method accountLocked() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method updateUserPassword() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method success() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::authenticateWithSession() has invalid return type App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method findSessionById() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteSession() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method sessionExpired() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method findUserById() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteSession() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method updateSessionActivity() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method success() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::authenticateWithRememberToken() has invalid return type App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 154, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method findRememberToken() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteRememberToken() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method tokenExpired() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method findUserById() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteRememberToken() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteRememberToken() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method success() on an unknown class App\\Framework\\Auth\\AuthenticationResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 188, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteSession() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteAllUserSessions() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method deleteAllUserRememberTokens() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::changePassword() has invalid return type App\\Framework\\Auth\\PasswordChangeResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method findUserById() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\PasswordChangeResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 222, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\PasswordChangeResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method validationFailed() on an unknown class App\\Framework\\Auth\\PasswordChangeResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 233, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method updateUserPassword() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 240, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method failed() on an unknown class App\\Framework\\Auth\\PasswordChangeResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 242, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method success() on an unknown class App\\Framework\\Auth\\PasswordChangeResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::createSession() has invalid return type App\\Framework\\Auth\\AuthenticationSession.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 264, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 264, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Auth\\AuthenticationSession not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 266, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 266, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 272, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method storeSession() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 275, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::createRememberToken() has invalid return type App\\Framework\\Auth\\RememberToken.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 283, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 287, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 54 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Auth\\RememberToken not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 289, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 55 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 292, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 56 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method storeRememberToken() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 296, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 57 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method withPlainTextValue() on an unknown class App\\Framework\\Auth\\RememberToken.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 298, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 58 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $session of method App\\Framework\\Auth\\AuthenticationService::isSessionExpired() has invalid type App\\Framework\\Auth\\AuthenticationSession.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 304, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 304, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 59 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getExpiresAt() on an unknown class App\\Framework\\Auth\\AuthenticationSession.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 306, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 60 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 306, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 61 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $token of method App\\Framework\\Auth\\AuthenticationService::isRememberTokenExpired() has invalid type App\\Framework\\Auth\\RememberToken.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 312, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 62 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getExpiresAt() on an unknown class App\\Framework\\Auth\\RememberToken.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 314, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 314, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 63 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 314, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 314, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 64 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getFailedLoginAttempts() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 322, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 65 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getLastFailedAttemptTime() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 328, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 328, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 66 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 335, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 335, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 67 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getLastFailedAttemptTime() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 343, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 68 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method incrementFailedLoginAttempts() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 356, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 356, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 69 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method clearFailedLoginAttempts() on an unknown class App\\Framework\\Auth\\AuthenticationRepository.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 364, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 364, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 70 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 379, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 379, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 71 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\AuthenticationService::validateAuthenticationRequest() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'line' => 401, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 'line' => 339, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 339, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 'line' => 350, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 350, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $min (0) of function random_int expects lower number than parameter #2 $max (int<-1, max>).', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 233, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy::validatePatterns() returns void but does not have any side effects.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'void.pure', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Http\\ValueObjects\\IpPattern and App\\Framework\\Http\\ValueObjects\\IpPattern will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 290, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Http\\ValueObjects\\IpPattern and App\\Framework\\Http\\ValueObjects\\IpPattern will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 296, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheBuilder::withValidation() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheBuilder::createFull() has parameter $validationConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheBuilder::createDevelopment() has parameter $validationConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Cache\\CacheIdentifierCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheInitializer::clear() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $seconds of static method App\\Framework\\Core\\ValueObjects\\Duration::fromSeconds() expects float, int|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheKey::forQuery() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheKey::forCollection() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheKey::normalizeString() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Cache\\CacheKeyCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array is passed by reference so it does not accept readonly property App\\Framework\\Cache\\CacheKeyCollection::$keys.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.byRef', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Cache\\CacheResult implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toString() on string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of static method App\\Framework\\Cache\\CacheItem::hit() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of static method App\\Framework\\Cache\\CacheItem::miss() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function md5 expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Driver\\FileCache::getFilesForKey() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Cache\\Driver\\InMemoryCache::$data type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (int|Redis|false) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CachePrefix::cases().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheClear.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheClear.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheClear.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Storage::listDirectory() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of method App\\Framework\\Filesystem\\Storage::delete() (void) is used.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.void', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between null and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\GeneralCache::getDriver() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\GeneralCache::getCompressionStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $keyString might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Cache\\Metrics\\CacheMetrics::$stats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Cache\\Metrics\\CacheMetrics::$keyStats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetrics::getStatsForDriver() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $json of function json_decode expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 233, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 246, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 259, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetrics::getTopKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetrics::getHeaviestKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 314, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 314, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 341, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 341, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetrics::getFormattedDriverStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 344, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetricsInterface::getStatsForDriver() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetricsInterface::getTopKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheMetricsInterface::getHeaviestKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot::__construct() has parameter $driverStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot::__construct() has parameter $heaviestKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot::__construct() has parameter $topKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot::getRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 231, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 296, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 299, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 323, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache::sanitizeKey() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'line' => 325, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 325, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Cache\\CacheKey and App\\Framework\\Cache\\CacheKey will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\MultiLevelCache::remember() should return App\\Framework\\Cache\\CacheItem but returns App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\MultiLevelCache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\MultiLevelCache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\ServiceCacheDecorator::__call() has parameter $args with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\Cache::remember() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $ttl of method App\\Framework\\Cache\\Cache::remember() expects App\\Framework\\Core\\ValueObjects\\Duration|null, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $pattern of method App\\Framework\\Cache\\SmartCache::getByPattern() expects App\\Framework\\Cache\\CachePattern, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $prefix of method App\\Framework\\Cache\\SmartCache::getByPrefix() expects App\\Framework\\Cache\\CachePrefix, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $tag of method App\\Framework\\Cache\\SmartCache::getByTag() expects App\\Framework\\Cache\\CacheTag, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $pattern of method App\\Framework\\Cache\\SmartCache::hasByPattern() expects App\\Framework\\Cache\\CachePattern, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $prefix of method App\\Framework\\Cache\\SmartCache::hasByPrefix() expects App\\Framework\\Cache\\CachePrefix, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $tag of method App\\Framework\\Cache\\SmartCache::hasByTag() expects App\\Framework\\Cache\\CacheTag, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $pattern of method App\\Framework\\Cache\\SmartCache::forgetByPattern() expects App\\Framework\\Cache\\CachePattern, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $prefix of method App\\Framework\\Cache\\SmartCache::forgetByPrefix() expects App\\Framework\\Cache\\CachePrefix, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $tag of method App\\Framework\\Cache\\SmartCache::forgetByTag() expects App\\Framework\\Cache\\CacheTag, App\\Framework\\Cache\\CacheIdentifier given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 239, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\CacheResult::getItem() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 246, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toString() on string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toString() on string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 250, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::getAsync() has parameter $keys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::setAsync() has parameter $items with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 308, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::hasAsync() has parameter $keys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 336, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::hasAsync() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 336, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::forgetAsync() has parameter $keys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 369, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 369, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Cache\\CachePattern::$pattern.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 408, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 408, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 415, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 415, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Cache\\CachePrefix::$value.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 441, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 441, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 448, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 448, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 477, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 477, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::hasByPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 489, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 489, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Cache\\CachePattern::$pattern.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 500, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 500, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::hasByPrefix() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 517, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 517, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Cache\\CachePrefix::$value.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 528, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 528, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::hasByTag() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 545, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 545, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 560, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 560, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::forgetByPattern() should return int but returns false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 579, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 579, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Cache\\CachePattern::$pattern.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 584, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 584, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 591, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 591, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Cache\\CachePrefix::$value.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 618, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 618, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 625, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 625, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 655, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 655, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::computeSync() has parameter $toCompute with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 698, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 698, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::computeSync() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 698, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 698, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::computeAsync() has parameter $toCompute with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 719, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 719, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::computeAsync() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 719, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 719, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\SmartCache::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 745, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 745, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $keyString might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'line' => 881, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 881, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TagIndex::untagKey() should return bool but returns int|true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TagIndex::getKeysForTag() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TagIndex::getTagsForKey() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TagIndex::getAllTags() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 159, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TagIndex::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TagIndex::updateKeyTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TaggedCache::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheTag::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TaggedCache::flush() should return bool but returns int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TaggedCache::getTagStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\TaggedCache::getTags() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 161, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\ValidationCacheDecorator::__construct() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\ValidationCacheDecorator::validateKey() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::__construct() has parameter $configurations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::getAllServicesStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::getGlobalStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::performHealthChecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 158, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::exportConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::importConfiguration() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::getServicesInNamespace() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::getServiceConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 243, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerManager::performServiceHealthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'line' => 264, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 264, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\CircuitBreakerMiddleware::__construct() has parameter $protectedServices with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fgets expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fclose expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $context (App\\Framework\\Exception\\ExceptionContext) in call to App\\Framework\\Database\\Exception\\DatabaseException constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\DatabaseCircuitBreaker::getStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'state\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'failure_count\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'success_count\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'last_failure_time\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'state\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_callable() with callable(Throwable, string): bool will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $exceptionTypes of static method App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate::only() expects array>, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exceptions\\DatabaseException not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::__construct() has parameter $serviceConfigs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\CircuitBreaker\\CircuitBreaker::execute()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\HttpClient::request().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $response of class App\\Framework\\HttpClient\\Exception\\ClientErrorException constructor expects App\\Framework\\HttpClient\\ClientResponse, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::get() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $method of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Method, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $headers of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::post() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $method of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Method, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $headers of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::put() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $method of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Method, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $headers of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::delete() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $method of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Method, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $headers of class App\\Framework\\HttpClient\\ClientRequest constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::getServicesStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'state\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'failure_count\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'success_count\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'state\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'last_failure_time\' on App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::getStatusCode().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::getStatusCode().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientRequest::getUrl().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker::withServices() has parameter $services with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 202, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Registry\\CacheBasedServiceRegistry::discoverServices() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Registry\\CacheBasedServiceRegistry::getNamespaces() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Registry\\CacheBasedServiceRegistry::getAllServices() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry::discoverServices() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry::getNamespaces() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry::getAllServices() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\SlidingWindow\\CircuitBreakerSlidingWindow::__construct() has parameter $slidingWindow with generic interface App\\Framework\\SlidingWindow\\SlidingWindow but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CircuitBreaker\\SlidingWindow\\CircuitBreakerSlidingWindow::getSlidingWindow() return type with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\CommandHandlerCompiler::compile() has parameter $handlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\CommandHandlerCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerDescriptor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\CommandHandlerDescriptor::fromHandlerArray() has parameter $handler with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerDescriptor.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerDescriptor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\CommandHandlerMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\Collections\\ParameterCollection::getFirst().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\CommandBus\\CommandHandlersCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\CommandBus\\CommandHandlersCollection::$handlers type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\CommandHandlersCollection::all() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\CommandHandlersCollection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\DefaultCommandBus::__construct() has parameter $middlewares with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\CommandBus\\DefaultCommandBus::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\Container::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\Container::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\DefaultCommandBus::__debugInfo() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\CommandBus\\DefaultCommandBus::__debugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Console\\ConsoleOutput::askPassword().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $basePath of method App\\Framework\\Config\\EncryptedEnvLoader::generateSecretsTemplate() expects App\\Framework\\Filesystem\\FilePath|string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $basePath of method App\\Framework\\Config\\EncryptedEnvLoader::validateEncryptionSetup() expects App\\Framework\\Filesystem\\FilePath|string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 236, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Config\\EncryptedEnvLoader::$randomGenerator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\EncryptedEnvLoader::parseEnvFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\EncryptedEnvLoader::generateSecretsTemplate() has parameter $secretKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\EncryptedEnvLoader::encryptSecretsInFile() has parameter $keysToEncrypt with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 179, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 230, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\EncryptedEnvLoader::validateEncryptionSetup() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\SecretManager::getSecretKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\SecretManager::rotateSecrets() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 154, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\SecretManager::validateSecretsForContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 227, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Config\\SecurityConfig::__construct() has parameter $allowedHosts with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $timezone of class App\\Framework\\Config\\AppConfig constructor expects App\\Framework\\DateTime\\Timezone, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toDateTimeString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_object() with object will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Console\\CommandRegistry::$commandList is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Console\\CommandRegistry::$commandList is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Console\\CommandRegistry::$discoveredAttributes is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Console\\CommandRegistry::$discoveredAttributes is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Negated boolean expression is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\BooleanNot', 'identifier' => 'booleanNot.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\CommandRegistry::normalizeCommandResult() has parameter $result with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Components\\InteractiveMenu::$menuItems type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Components\\InteractiveMenu::$output (App\\Framework\\Console\\ConsoleOutput) does not accept App\\Framework\\Console\\ConsoleOutputInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Components\\Table::$headers type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Components\\Table::$rows type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Components\\Table::$columnWidths type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\Components\\Table::setHeaders() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\Components\\Table::addRow() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\Components\\Table::setRows() has parameter $rows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $style of method App\\Framework\\Console\\Components\\Table::renderRow() expects App\\Framework\\Console\\ConsoleStyle, App\\Framework\\Console\\ConsoleStyle|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $style of method App\\Framework\\Console\\Components\\Table::renderRow() expects App\\Framework\\Console\\ConsoleStyle, App\\Framework\\Console\\ConsoleStyle|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\Components\\Table::renderRow() has parameter $cells with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\Components\\TextBox::wrapText() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\Components\\TextBox::splitTextIntoLines() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method apply() on App\\Framework\\Console\\ConsoleStyle|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with non-empty-array will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleApplication::validateAndSanitizeInput() should return array but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleCommandMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$name.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$description.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\ConsoleInput::$arguments type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\ConsoleInput::$options type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::__construct() has parameter $arguments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::parseArguments() has parameter $arguments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::getArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::getOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method askQuestion() on App\\Framework\\Console\\ConsoleOutputInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method confirm() on App\\Framework\\Console\\ConsoleOutputInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::choice() has parameter $choices with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $output of class App\\Framework\\Console\\Components\\InteractiveMenu constructor expects App\\Framework\\Console\\ConsoleOutputInterface, App\\Framework\\Console\\ConsoleOutputInterface|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::menu() has parameter $items with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $output of class App\\Framework\\Console\\Components\\InteractiveMenu constructor expects App\\Framework\\Console\\ConsoleOutputInterface, App\\Framework\\Console\\ConsoleOutputInterface|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::multiSelect() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInput::multiSelect() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method writeLine() on App\\Framework\\Console\\ConsoleOutputInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method writeLine() on App\\Framework\\Console\\ConsoleOutputInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method writeLine() on App\\Framework\\Console\\ConsoleOutputInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method write() on App\\Framework\\Console\\ConsoleOutputInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInputInterface::getArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInputInterface::getOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInputInterface::choice() has parameter $choices with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInputInterface::menu() has parameter $items with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInputInterface::multiSelect() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\ConsoleInputInterface::multiSelect() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::__construct() invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and 0 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Spinner::$frames type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Console\\Spinner::$updateCount (int) does not accept float.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/SpinnerStyle.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Console\\SpinnerStyle::getFrames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Console/SpinnerStyle.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Console/SpinnerStyle.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Context\\ExecutionContext::$serverEnvironment is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function var_dump() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $callback of function spl_autoload_register expects (callable(string): void)|null, Closure(mixed): false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeCompiler::compile() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeCompiler.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\AttributeMappingVisitor::$attributeMappers type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\AttributeMappingVisitor::$mappedAttributes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\AttributeMappingVisitor::$mapperByClass type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\AttributeMappingVisitor::$processingStats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::__construct() has parameter $attributeMappers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::hasRelevantAttributesWrappedMethod() has parameter $method with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::hasRelevantAttributesWrappedProperty() has parameter $property with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 199, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 199, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributesWrapped() has parameter $attributes with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributesWrappedMethod() has parameter $attributes with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributesWrappedMethod() has parameter $method with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributesWrappedProperty() has parameter $attributes with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributesWrappedProperty() has parameter $property with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::hasRelevantAttributes() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 358, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributes() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 384, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::processAttributes() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::serializeReflector() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 424, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 424, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of static method App\\Framework\\Cache\\CacheKey::fromString() expects string, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 459, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 459, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::getAttributesOfType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 490, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 490, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::getAllMappedAttributes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 498, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 498, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeMappingVisitor::getProcessingStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'line' => 506, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 506, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeProcessor::processClass() has parameter $refClass with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeProcessor::processClass() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeProcessor::processAttributes() has parameter $ref with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeProcessor::processAttributes() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $reflectionTarget of method App\\Framework\\Core\\AttributeMapper::map() expects App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod, ReflectionClass|ReflectionMethod given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\AttributeProcessor::extractMethodParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::isBuiltin().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\ClassParser::$classCache type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\ClassParser::$tokenCache type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ClassParser::getClassesInFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ClassParser::parseNamespace() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ClassParser::parseClassName() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ClassParser::getTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 161, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ContainerBootstrapper::tryLoadCompiledContainer() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $compiledPath might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'If condition is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Stmt\\If_', 'identifier' => 'if.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\DynamicRoute::__construct() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\DynamicRoute::__construct() has parameter $paramNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\DynamicRoute::__construct() has parameter $paramValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\DynamicRoute::__construct() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $index of method App\\Framework\\Core\\Encoding\\Base32Alphabet::getCharacterAt() expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $codepoint of function chr expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Encoding\\Base32Encoder::removeFormatting() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ApplicationBooted.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ApplicationBooted.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ApplicationBooted.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 13, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ErrorOccurred.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ErrorOccurred.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ErrorOccurred.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 13, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Anonymous function has an unused use $container.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\Closure', 'identifier' => 'closure.unusedUse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\Events\\EventDispatcher::$handlers type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventDispatcher::__construct() has parameter $eventHandlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventDispatcher::__invoke() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventDispatcher::invokeHandler() has parameter $handler with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $container of class App\\Framework\\Core\\Events\\EventDispatcher constructor expects App\\Framework\\DI\\DefaultContainer, App\\Framework\\DI\\Container given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventDispatcherInterface::dispatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInterface.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventHandlerCompiler::compile() has parameter $attributeData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventHandlerCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventHandlerMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Reflection\\Collections\\ParameterCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\ClassName::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventHandlerMapper::process() has parameter $attributeData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Events\\EventHandlerMapper::process() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\InterfaceImplementationVisitor::$interfaces is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\PathProvider::$resolvedPaths type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\PathProvider::$namespacePaths type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $json of function json_decode expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type array|null supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type array|null supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\Performance\\ContainerPerformanceMonitor::__construct() has parameter $customThresholds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Core\\ValueObjects\\Duration and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Core\\ValueObjects\\Duration and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Core\\PhpObjectExporter::export() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Core\\PhpObjectExporter::export() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\Route::$parameters type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\Route::$attributes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\RouteCache::save() has parameter $routes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\RouteCache::load() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Core\\RouteCompiler has an uninitialized readonly property $named. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\RouteCompiler::$named is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\RouteCompiler::createParameterCollection() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 112, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between \'*\' and \'*\' will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\RouteMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\StaticRoute::__construct() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\StaticRoute::__construct() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Core\\ValueObjects\\ClassName::$fullyQualified (class-string) does not accept string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\ClassName::getFullyQualified() should return class-string but returns string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Coordinates::getHemisphere() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Coordinates::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $length of function substr expects int|null, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $length of function substr expects int|null, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Score::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Score::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 253, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Score::weightedAverage() has parameter $scores with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Score::weightedAverage() has parameter $weights with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\EmailSecurityService::detectSimilarEmails() has parameter $existingEmails with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\EmailSecurityService::detectSimilarEmails() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationService::__construct() has parameter $allowedDomains with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationService::__construct() has parameter $blockedDomains with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationService::suggestCorrections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationService::validateSyntax() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'scheme\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'host\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'port\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'path\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator::withQuery() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'query\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'fragment\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'user\' on array{scheme?: string, host?: string, port?: int<0, 65535>, user?: string, pass?: string, path?: string, query?: string, fragment?: string}|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator::buildUrl() has parameter $parsed with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\VersionParser::parse() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\VersionParser::buildParseResult() has parameter $matches with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Services\\VersionParser::buildParseResult() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php', 'line' => 329, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 329, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_int() with int will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php', 'line' => 333, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 333, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Timezone::getContinent() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on non-empty-list on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Timezone::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Url::build() has parameter $query with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Core\\ValueObjects\\Url::getQueryParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$scheme is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$scheme is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$host is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$host is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$port is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$port is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 272, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$path is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$path is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$query is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$query is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$fragment is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$fragment is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 275, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$user is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$user is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$password is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Core\\ValueObjects\\Url::$password is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 277, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'line' => 282, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 282, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Config\\EnvironmentType::isTesting().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 221, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 221, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $className of method App\\Framework\\Reflection\\CachedReflectionProvider::getClass() expects App\\Framework\\Core\\ValueObjects\\ClassName, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 253, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 264, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 264, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 276, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $key of function sodium_crypto_generichash expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $key of function sodium_crypto_generichash expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 269, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of || is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\BooleanOrNode', 'identifier' => 'booleanOr.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of || is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\BooleanOrNode', 'identifier' => 'booleanOr.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between GMP and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between GMP and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between GMP and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter &$data by-ref type of method App\\Framework\\Cryptography\\CryptographicUtilities::secureWipe() expects string, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => 'You can change the parameter out type with @param-out PHPDoc tag.', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\VariableAssignNode', 'identifier' => 'parameterByRef.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $codepoint of function chr expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 309, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cryptography\\CryptographicUtilities::constantTimeArraySearch() has parameter $haystack with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'line' => 360, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 360, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Cryptography\\DigitalSignature::$randomGenerator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cryptography\\KeyDerivationFunction::hashPassword() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 253, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function base64_decode expects string, list|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of function openssl_pkey_get_details expects OpenSSLAsymmetricKey, OpenSSLAsymmetricKey|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'rsa\' on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'rsa\' on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 230, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'ec\' on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 247, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'ec\' on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 277, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cuid\\Cuid::getDateTime() should return DateTimeImmutable but returns DateTimeImmutable|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$timestamp is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$counter is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$counter is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$fingerprint is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 251, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$fingerprint is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 251, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 251, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$random is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Cuid\\Cuid::$random is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 255, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Constant App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::BASELINE_PERIOD_HOURS is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-used-class-constants', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassConstantsNode', 'identifier' => 'classConstant.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::$cache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::detectAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Infrastructure\\GeoIp\\CountryInfo::getCountryCode().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::analyzeCountryRisk() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::analyzeGeographicDistribution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'timestamp\' on App\\Framework\\Cache\\CacheItem.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array of function array_filter expects array, App\\Framework\\Cache\\CacheResult given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function max expects non-empty-array, array> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'array> might be empty.', 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::analyzeCountryVelocity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 202, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'timestamps\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'baseline\' does not exist on array{timestamps: (array|null)}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::analyzeCountryReputation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'total_requests\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 253, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'attack_count\' does not exist on array{reputation_score: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'total_requests\' does not exist on array{reputation_score: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::analyzeAttackPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'request_intervals\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 292, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::calculateCombinedAnomalyScore() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 321, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::calculateAnalysisConfidence() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 354, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 354, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::identifyRiskFactors() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::identifyRiskFactors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::createSafeResult() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 418, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 418, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::calculateShannonEntropy() has parameter $frequency with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 438, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 438, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::calculateRequestIntervals() has parameter $timestamps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 471, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 471, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::calculateRequestIntervals() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 471, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 471, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::calculateTimingRegularity() has parameter $intervals with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 487, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 487, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 506, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 506, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 506, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 506, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'country_frequency\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 513, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 513, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'country_frequency\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 513, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 513, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'country_frequency\' does not exist on array{total_requests: (float|int<10001, max>), last_updated: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 520, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 520, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 526, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 526, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array)> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 526, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 526, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 54 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'line' => 526, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 526, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeTrafficPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeIpTraffic() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $values of method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::calculateAverage() expects array, App\\Framework\\Cache\\CacheResult given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $values of method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::calculateStandardDeviation() expects array, App\\Framework\\Cache\\CacheResult given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access an offset on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzePathTraffic() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'avg\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'max\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'avg\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'max\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'avg\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'max\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeGlobalTraffic() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 161, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'normal\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'max\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'normal\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 179, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'max\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeBurstPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 187, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeTemporalPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 215, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access an offset on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, (array|null) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::calculateCombinedThreatScore() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::calculateAnalysisConfidence() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 304, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 304, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 350, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 350, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::calculateAverage() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 353, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::calculateStandardDeviation() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 358, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 358, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 397, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 397, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 397, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 397, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'count\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 399, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 399, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'count\' does not exist on array{sum: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 401, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 401, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'count\' does not exist on array{sum: float, avg: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 404, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 404, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 409, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 409, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 409, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 409, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 415, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 415, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 415, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 415, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'avg\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 417, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 417, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::identifyAnomalyIndicators() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 424, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 424, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::identifyAnomalyIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'line' => 424, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 424, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Score::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Score::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Score::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::identifyAttackPatterns() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isVolumetricAttack() has parameter $trafficAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isProtocolAttack() has parameter $wafAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isApplicationLayerAttack() has parameter $wafAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isDistributedAttack() has parameter $geoAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isBotnetAttack() has parameter $signatureAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isSlowAttack() has parameter $trafficAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::isAmplificationAttack() has parameter $trafficAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 224, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 224, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::calculatePatternConfidence() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::assessPatternSeverity() has parameter $patterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 266, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 266, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::getPatternAnalysisDetails() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 291, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::getPatternAnalysisDetails() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 291, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::analyzePatternEvolution() has parameter $historicalData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 320, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::analyzePatternEvolution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 320, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\AttackPatternDetector::generatePatternFingerprint() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 371, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 371, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\ServerEnvironment::getRemoteAddress().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'line' => 381, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 381, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::analyzeRequestSignature() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::calculateBotScore() has parameter $signature with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 235, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::analyzeRequestFrequency() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::analyzeRequestFrequency() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function max expects non-empty-array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'list might be empty.', 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function min expects non-empty-array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'list might be empty.', 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 310, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 310, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 311, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 315, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 315, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::createBehavioralProfile() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 321, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::createBehavioralProfile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 321, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $userAgent on left side of ?? always exists and is always null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 383, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::identifyAccessPatterns() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 389, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 389, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::identifyAccessPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 389, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 389, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::detectAutomationIndicators() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 421, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 421, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::detectAutomationIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 421, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 421, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::analyzePayloadCharacteristics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 471, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 471, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::detectSessionHijackingIndicators() has parameter $sessionData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 543, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 543, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::detectSessionHijackingIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 543, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 543, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\RequestAnalyzer::analyzeHttpMethodAppropriateness() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'line' => 587, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 587, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer::$monitoredServices type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer::__construct() has parameter $services with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer::analyzeServiceHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Components\\ThreatLevelCalculator::$defaultWeights type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\ThreatLevelCalculator::__construct() has parameter $weights with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\ThreatLevelCalculator::calculateThreatLevel() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\ThreatLevelCalculator::calculateConfidence() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getThreatAssessment() on class-string|object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Components\\WafAnalysisAdapter::analyzeRequest() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DDoS\\Waf\\DDoSWafLayer::process().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\WafDecision::getThreatAssessment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\Logger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\WafDecision::getThreatAssessment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method warning() on App\\Framework\\Logging\\Logger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\WafDecision::getThreatAssessment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::__construct() has parameter $allowedCountries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::__construct() has parameter $blockedCountries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::__construct() has parameter $exemptPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::__construct() has parameter $trustedIps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::getRateLimitForIp() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::getCircuitBreakerConfig() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 393, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 393, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'line' => 406, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 406, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\DDoSProtectionEngine::$securityLogger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toHumanReadable() on App\\Framework\\Core\\ValueObjects\\Duration|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\DDoSProtectionEngine::performMultiLayerAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $windowSeconds (int) in call to method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeTrafficPatterns().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rateLimiter of method App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer::analyzeTrafficPatterns() expects App\\Framework\\RateLimit\\RateLimiter, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $geoIpService of method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::detectAnomalies() expects App\\Infrastructure\\GeoIp\\GeoIp, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $cache of method App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector::detectAnomalies() expects App\\Framework\\Cache\\Cache, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::$circuitBreaker is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $blockingStrategy of method App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::__construct() has invalid type App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::$blockingStrategy has unknown class App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rateLimitingStrategy of method App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::__construct() has invalid type App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::$rateLimitingStrategy has unknown class App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $captchaStrategy of method App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::__construct() has invalid type App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::$captchaStrategy has unknown class App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $tarPitStrategy of method App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::__construct() has invalid type App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::$tarPitStrategy has unknown class App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeImmediate() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeDistributed() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeAggressive() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeIntelligent() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeStandard() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeModerate() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 214, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeAggressive() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeConnection() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeChallenge() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method executeTarPit() on an unknown class App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityEventLogger::logSecurityEvent() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $exception of method App\\Framework\\ErrorHandling\\SecurityEventLogger::logSecurityEvent() expects App\\Framework\\Exception\\SecurityException, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 269, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 269, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'count\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 272, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 272, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'action_history\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 293, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'action_history\' does not exist on array{effectiveness: array{float}}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 305, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'action_history\' does not exist on array{effectiveness: array{float}}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 306, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $confidence of method App\\Framework\\DDoS\\DDoSConfig::shouldLogAssessment() expects App\\Framework\\Core\\ValueObjects\\Score, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 354, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 354, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityEventLogger::logSecurityEvent() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 371, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 371, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $exception of method App\\Framework\\ErrorHandling\\SecurityEventLogger::logSecurityEvent() expects App\\Framework\\Exception\\SecurityException, array|float|string> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 371, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 371, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::getResponseStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem::getResponseStatistics() should return array but returns App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 390, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 390, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 390, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 390, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 390, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 390, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 453, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 453, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 453, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 453, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 453, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 453, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 462, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 462, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Negated boolean expression is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 464, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 464, 'nodeType' => 'PhpParser\\Node\\Expr\\BooleanNot', 'identifier' => 'booleanNot.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'timestamp\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 468, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 468, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'duration\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 469, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 469, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'line' => 473, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 473, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse constructor expects string|null, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse constructor expects string|null, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 161, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse constructor expects string|null, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 187, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Headers::merge().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 225, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse::withMetadata() has parameter $additionalMetadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'line' => 294, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 294, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/AttackPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\AttackPattern::getRecommendedMitigation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/AttackPattern.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/AttackPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment::getThreatIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::__construct() has parameter $indicators with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::__construct() has parameter $sources with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::fromAnalyses() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::fromAnalyses() has parameter $weights with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::getIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::getSources() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\ValueObjects\\ThreatScore::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Waf\\DDoSWafConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafConfig.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int<1, max> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Waf\\ValueObjects\\DetectionCollection constructor invoked with 0 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Http\\HttpRequest::$queryString.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "+" between App\\Framework\\Cache\\CacheResult and 1 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Plus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::APPLICATION_ABUSE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, (float|int) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @var with type array|int> is not subtype of native type App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 223, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.nativeType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 223, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 223, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, (float|int) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array|int> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @var with type array|float|int> is not subtype of native type App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.nativeType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 298, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 298, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 298, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 323, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array|float|int> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 323, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 323, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 331, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function stripos expects string, array|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 337, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 354, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 354, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 354, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 354, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'intervals\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 357, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 357, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 383, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 383, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 383, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 386, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 386, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::BOT_DETECTION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 387, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 387, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 390, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 386, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 386, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $avgInterval might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 395, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 395, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Http\\HttpRequest::$queryString.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 406, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 406, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\HttpRequest::getBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 407, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 407, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 445, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 445, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 449, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 445, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 450, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 445, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "+" between App\\Framework\\Cache\\CacheResult and 1 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 493, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 493, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Plus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 493, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 493, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 54 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 493, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 493, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 55 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 494, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 494, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 56 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 494, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 494, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 57 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 510, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 510, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 58 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::PROTOCOL_VIOLATION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 511, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 511, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 59 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 514, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 510, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 60 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 515, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 510, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 61 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Http\\HttpRequest::$queryString.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 532, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 532, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 62 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 535, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 63 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 535, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 64 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'counts\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 538, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 538, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 65 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'counts\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 539, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 539, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 66 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() expects App\\Framework\\Waf\\Detection, App\\Framework\\Waf\\ValueObjects\\Detection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 554, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 554, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 67 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, (float|int) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 558, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 554, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 68 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $evidence in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 559, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 554, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 69 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 569, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 569, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 70 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 569, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 569, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 71 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 581, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 581, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 72 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 582, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 582, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 73 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 607, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 607, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 74 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 615, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 615, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 75 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 625, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 625, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 76 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 625, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 625, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 77 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'total_requests\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 627, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 627, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 78 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'attack_count\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 628, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 628, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 79 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\LayerResult::pass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 638, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 638, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 80 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 642, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 642, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 81 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\LayerResult::block().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 647, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 647, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 82 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $detections of static method App\\Framework\\Waf\\LayerResult::suspicious() expects array, App\\Framework\\Waf\\ValueObjects\\DetectionCollection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 658, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 655, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 83 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\LayerResult::pass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 662, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 662, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 84 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 674, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 674, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 85 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 674, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 674, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 86 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 685, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 685, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 87 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'request_patterns\' on App\\Framework\\Cache\\CacheResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 690, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 690, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 88 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 697, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 697, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 89 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 697, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 697, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 90 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 702, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 702, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 91 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Waf\\DDoSWafLayer::calculateAverageInterval() has parameter $timestamps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 710, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 710, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 92 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 775, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 775, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 93 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Negated boolean expression is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 795, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 795, 'nodeType' => 'PhpParser\\Node\\Expr\\BooleanNot', 'identifier' => 'booleanNot.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 94 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 795, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 795, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 95 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 801, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 801, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 96 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 801, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 801, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 97 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 801, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 801, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 98 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Waf\\DDoSWafLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 836, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 836, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 99 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DDoS\\Waf\\DDoSWafLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 852, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 852, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 100 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::APPLICATION_ABUSE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'line' => 864, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 864, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DI\\BindingRegistry::$bindings type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\BindingRegistry::getAllBindings() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\BindingRegistry::getAllKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DI\\ContainerCompiler::$reflectionProvider is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\ContainerCompiler::compile() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\ContainerCompiler::generateContainerCode() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\ContainerCompiler::compileDependencyInjection() has parameter $dependencies with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Dependency\\Dependency::getType().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Dependency\\Dependency::getClassName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Dependency\\Dependency::getType().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Dependency\\Dependency::getValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 257, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 260, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 260, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 307, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 307, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 332, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\DI\\Compiled\\CompiledContainer not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 355, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 355, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\ContainerCompiler::compileAsync() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'line' => 361, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 361, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\InstanceRegistry::markAsSingleton() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\InstanceRegistry::setInstance() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\DefaultContainer::get() should return T of object but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => 'Type object is not always the same as T. It breaks the contract for some argument types, typically subtypes.', 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\DefaultContainer::get() should return T of object but returns object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => 'Type object is not always the same as T. It breaks the contract for some argument types, typically subtypes.', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\DefaultContainer::createInstance() should return T of object but returns object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => 'Type object is not always the same as T. It breaks the contract for some argument types, typically subtypes.', 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $concrete of method App\\Framework\\DI\\DefaultContainer::resolveBinding() expects (callable(): mixed)|object|string, (callable(): mixed)|object|string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\DefaultContainer::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\DefaultContainer::getRegisteredServices() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\ConstructorCache::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\Dependency::getCacheInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\Dependency::fromCacheInfo() has parameter $cacheInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\DI\\Dependency\\DependencyCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyCollection.php', 'line' => 10, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\DI\\Dependency\\ParameterCacheCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\ParameterCacheCollection::getClassDependencies() should return array but returns list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\ParameterCacheInfo::fromArray() has parameter $cacheInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\ParameterCacheInfo::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getFullyQualified() on App\\Framework\\Core\\ValueObjects\\ClassName|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Dependency\\ResolvedParameter::getCacheInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $className of method App\\Framework\\DI\\DependencyResolver::resolveFromContainer() expects App\\Framework\\Core\\ValueObjects\\ClassName, App\\Framework\\Core\\ValueObjects\\ClassName|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\DependencyResolver::getCacheStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Exceptions\\CyclicDependencyException::__construct() has parameter $dependencyChain with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\Exceptions\\ParameterResolutionException::__construct() has parameter $dependencyChain with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\InitializerDependencyGraph::analyzeDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\InitializerDependencyGraph::topologicalSort() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\InitializerDependencyGraph::hasCycle() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\InitializerMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Reflection\\WrappedReflectionClass and App\\Framework\\Reflection\\WrappedReflectionClass will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getFullyQualified() on string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DI\\InstanceRegistry::$singletons type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\DI\\InstanceRegistry::$instances type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between mixed and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'Type null has already been eliminated from mixed.', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\InstanceRegistry::getAllRegistered() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\InstanceRegistry::getSingletons() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\InstanceRegistry::hasSingleton() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\MethodInvoker::invoke() has parameter $overrides with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\MethodInvoker::invokeOn() has parameter $overrides with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\MethodInvoker::invokeStatic() has parameter $overrides with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\MethodInvoker::resolveMethodParameters() has parameter $overrides with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DI\\MethodInvoker::resolveMethodParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\Container::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncAwareConnection::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryMultiple() has parameter $queries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryMultiple() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::aggregate() has parameter $namedQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::aggregate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::batchInsert() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::batchInsert() has parameter $rows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::batchInsert() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::batchUpdate() has parameter $updates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::batchUpdate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::readAhead() has parameter $queries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 207, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::readAhead() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 207, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryReplicas() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::queryReplicas() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::getTableStats() has parameter $tables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 285, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::getTableStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 285, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseAdapter::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'line' => 328, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 328, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\AsyncDatabaseBuilder::$queries type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::select() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::selectOne() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::selectColumn() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::selectScalar() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::count() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::sum() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::avg() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::max() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::min() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::execute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::executeAsReadAhead() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::addQuery() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseBuilder::executeInTransaction() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 258, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryAsync() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryMultiple() has parameter $queries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryMultiple() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::aggregate() has parameter $namedQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::aggregate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::batchInsert() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::batchInsert() has parameter $rows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::batchInsert() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::batchUpdate() has parameter $updates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::batchUpdate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::readAhead() has parameter $queries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 232, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::readAhead() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 232, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::executeAsync() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryReplicas() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 270, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::queryReplicas() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 270, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::optimisticUpdate() has parameter $conditions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::optimisticUpdate() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::getTableStats() has parameter $tables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::getTableStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 428, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 428, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\AsyncDatabaseDecorator::buildWhereClause() has parameter $conditions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'line' => 454, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 454, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "-" between 100 and App\\Framework\\Core\\ValueObjects\\Percentage results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Minus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupMetadata::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupMetadata::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupOptions::__construct() has parameter $excludeTables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupOptions::__construct() has parameter $includeTables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupOptions::withTables() has parameter $tables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupOptions::excludingTables() has parameter $tables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupOptions::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\BackupOptions::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 165, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 246, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $json of function json_decode expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 247, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Backup\\DatabaseBackupService::$randomGenerator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $permissions of method App\\Framework\\Filesystem\\Directory::create() expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static call to instance method App\\Framework\\Filesystem\\Directory::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'method.staticCall', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Filesystem\\File::write().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Filesystem\\File::read().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\DatabaseBackupService::listBackups() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 154, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $checksum of class App\\Framework\\Database\\Backup\\BackupMetadata constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 294, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 288, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Filesystem\\File::write().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 307, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 307, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Filesystem\\File::read().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 321, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Backup\\DatabaseBackupService::getTables() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'Create Table\' might not exist on array|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 373, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\BatchRelationLoader::preloadHasMany() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entityClass of method App\\Framework\\Database\\BatchRelationLoader::findByQuery() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $foreignKeyProperty of method App\\Framework\\Database\\BatchRelationLoader::groupByForeignKey() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\BatchRelationLoader::preloadBelongsTo() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entityClass of method App\\Framework\\Database\\BatchRelationLoader::findByQuery() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\BatchRelationLoader::preloadOneToOne() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entityClass of method App\\Framework\\Database\\BatchRelationLoader::findByQuery() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 133, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $foreignKeyProperty of method App\\Framework\\Database\\BatchRelationLoader::groupByForeignKey() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $propertyName of method App\\Framework\\Database\\BatchRelationLoader::getPropertyValue() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 161, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $propertyName of method App\\Framework\\Database\\BatchRelationLoader::getPropertyValue() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\BatchRelationLoader::findByQuery() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\BatchRelationLoader::findByQuery() should return array but returns list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 280, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\CacheAdapterStrategy::$stats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::set() has parameter $value with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Cache\\CacheResult and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::has() should return bool but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::has() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function method_exists() with App\\Framework\\Cache\\Cache and \'clear\' will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 144, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::withTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::setWithTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::setWithTags() has parameter $value with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheAdapterStrategy::setWithTags() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\CacheMetrics::$entityMetrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\CacheMetrics::$queryMetrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\CacheMetrics::$startTime has unknown class App\\Framework\\Database\\Events\\Timestamp as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method fromClock() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getOverviewMetrics() has parameter $cacheStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method age() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $totalRequests of class App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics constructor expects int, array|float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getPerformanceMetrics() has parameter $cacheStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getEntityMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getRegionMetrics() has parameter $regionStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getRegionMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getRecommendations() has parameter $cacheStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 211, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 211, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getTopQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 283, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheMetrics::getSlowQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 297, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method fromClock() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'line' => 328, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 328, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheStrategy::set() has parameter $value with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheStrategy::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheStrategy::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpEntities() has parameter $warmupStrategies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::executeWarmupStrategy() has parameter $strategy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::executeWarmupStrategy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpRecentEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpPopularEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpCriticalEntities() has parameter $entityIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpCriticalEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::warmUpAllEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 159, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::getDefaultStrategies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 203, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::createCriticalStrategy() has parameter $entityIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\CacheWarmupStrategy::createCriticalStrategy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheKey::forCollection() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheKey::forCollection() has parameter $orderBy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheKey::forQuery() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\IdentityMap::add().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\IdentityMap::add().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::findCollection() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::findCollection() has parameter $orderBy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::findCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\IdentityMap::add().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\IdentityMap::add().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\IdentityMap::clear() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 168, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::warmUpCache() has parameter $warmUpStrategies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Metadata\\EntityMetadata::getIdProperty().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::getStrategyForEntity() should return string but returns App\\Framework\\Database\\Cache\\CacheStrategy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::shouldCacheCollection() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::shouldCacheCollection() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\EntityCacheManager::$strategies (array) does not accept array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 305, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\EntityCacheManager::executeWarmUpStrategy() has parameter $strategy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 317, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 317, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Database\\Cache\\EntityCacheManager::$enabled is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'line' => 329, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 329, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\NullSecondLevelCache::putQueryResult() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\NullSecondLevelCache::getQueryResult() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\NullSecondLevelCache::putCollection() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\NullSecondLevelCache::getCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\NullSecondLevelCache::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\NullSecondLevelCache::getRegionStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCache::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCache::query() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCache::getQueryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Database\\Cache\\QueryCache::$enabled is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCache::createQueryCacheKey() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $connection (App\\Framework\\Database\\ConnectionInterface) in call to App\\Framework\\Database\\Cache\\QueryCacheKey constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $hash in call to App\\Framework\\Database\\Cache\\QueryCacheKey constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCache::hashQuery() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strtoupper expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCache::shouldCacheQuery() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\QueryCache::$queryStats (array) does not accept array|int>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'hits\' on array{hits: 0, misses: 0}|int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\QueryCache::$queryStats (array) does not accept array|int>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 294, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 294, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'misses\' on array{hits: 0, misses: 0}|int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCacheKey::__construct() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strtolower expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCacheKey::normalizeParameters() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCacheKey::normalizeParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCacheKey::isAssociativeArray() has parameter $array with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCacheKey::getConnectionInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\QueryCacheKey::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::get() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\CacheResult::isHit().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheResult::getValue() invoked with 0 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::hasEntity() should return bool but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::has() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::forget() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::putQueryResult() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::getQueryResult() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::get() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\CacheResult::isHit().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheResult::getValue() invoked with 0 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::hasQueryResult() should return bool but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::has() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::forget() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::putCollection() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Driver\\RedisCache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::getCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::get() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\CacheResult::isHit().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\CacheResult::getValue() invoked with 0 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::hasCollection() should return bool but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 231, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::has() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 231, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$keys of method App\\Framework\\Cache\\Driver\\RedisCache::forget() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 268, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 268, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\RedisSecondLevelCache::getRegionStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SecondLevelCacheInterface::putQueryResult() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SecondLevelCacheInterface::getQueryResult() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SecondLevelCacheInterface::putCollection() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SecondLevelCacheInterface::getCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SecondLevelCacheInterface::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SecondLevelCacheInterface::getRegionStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\SimpleCacheStrategy::$cache type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\SimpleCacheStrategy::$expiry type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Cache\\SimpleCacheStrategy::$stats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SimpleCacheStrategy::set() has parameter $value with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SimpleCacheStrategy::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\SimpleCacheStrategy::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot::__construct() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot::__construct() has parameter $regions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics::__construct() has parameter $slowQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics::__construct() has parameter $topQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Commands\\ShowProfilingStatsCommand::$entityManager is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Config\\CacheConfig::__construct() has parameter $disabledEntityClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Config\\CacheConfig::__construct() has parameter $enabledEntityClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Config\\CacheConfig::__construct() has parameter $regions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Config\\ReadWriteConfig::getAllWeights() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionInterface::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionMetadata::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionPool::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 302, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 375, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ConnectionPool::getConnectionMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 402, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Criteria::getCriteria() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Criteria::getOrders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\CriteriaQuery::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criterion.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Criterion::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criterion.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criterion.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\DetachedCriteria::getCriteria() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\DetachedCriteria::getOrders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findUsersByEmail() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findActiveUsersWithPosts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findUsersByAge() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findUsersByIds() has parameter $userIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findUsersByIds() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::searchUsersByName() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findVipOrActiveUsers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findPremiumUsers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::getUserStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::getUsersPage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 161, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample::findUserByEmail() has invalid return type App\\Framework\\Database\\Criteria\\Example\\User.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Criteria\\Example\\User not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\InExpression::__construct() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\InExpression::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\LikeExpression::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\NotExpression::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Projection::getAliases() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection::getAliases() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Projection\\ProjectionList::getAliases() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection::getAliases() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Restrictions::in() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Criteria\\Restrictions::notIn() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createConnection() has parameter $middlewareConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createDirectConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createLazyConnection() has parameter $additionalMiddleware with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createLazyConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createRetryableConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createRobustConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createRobustConnection() has parameter $middlewareConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createPureLazyConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 144, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createCacheStrategy() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createCacheStrategyFromCache() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createCachedConnection() has parameter $cacheConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 199, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 199, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createCachedConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 199, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 199, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createCachedConnectionWithCache() has parameter $additionalConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createCachedConnectionWithCache() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createConnectionWithCustomCache() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 226, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createFullFeaturedConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createFullFeaturedConnection() has parameter $middlewareConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createProductionConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 268, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 268, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseFactory::createProductionConnection() has parameter $middlewareConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'line' => 268, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 268, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $memoryMonitor of class App\\Framework\\Database\\Profiling\\QueryProfiler constructor expects App\\Framework\\Performance\\MemoryMonitor, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::migrate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Migration\\MigrationLoader constructor invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $discoveryRegistry of class App\\Framework\\Database\\Migration\\MigrationLoader constructor expects App\\Framework\\Discovery\\Results\\DiscoveryRegistry, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::rollback() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Migration\\MigrationLoader constructor invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 168, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $discoveryRegistry of class App\\Framework\\Database\\Migration\\MigrationLoader constructor expects App\\Framework\\Discovery\\Results\\DiscoveryRegistry, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 168, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::rollback() should return array but returns App\\Framework\\Database\\Migration\\MigrationCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getMigrationStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Migration\\MigrationLoader constructor invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $discoveryRegistry of class App\\Framework\\Database\\Migration\\MigrationLoader constructor expects App\\Framework\\Discovery\\Results\\DiscoveryRegistry, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getMigrationStatus() should return array but returns App\\Framework\\Database\\Migration\\MigrationStatusCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getProfilingStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 203, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnectionPoolStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Driver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Driver\\Driver::$options type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Driver.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Driver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Driver\\DriverConfig::fromArray() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Driver\\MysqlDriver::$options type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Driver\\MysqlDriver::getOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 287, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, Throwable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 287, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 262, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 266, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 266, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'line' => 365, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 365, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer::getTableStatus() should return array> but returns array|string>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer::getIndexStatistics() should return array>> but returns array|string>|string>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 242, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 375, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, Throwable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 375, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'line' => 388, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 388, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Driver\\PostgresDriver::$options type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Driver\\PostgresDriver::getOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Driver\\SqliteDriver::$options type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Driver\\SqliteDriver::getOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityLoaderInterface::findOneBy() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityLoaderInterface::findBy() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityLoaderInterface::findBy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\EntityManager::$typeConverter is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\EntityManager::isLazyGhost() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\EntityManager::initializeLazyObject() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::getReference() should return object but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findAllEager() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\EntityManager::isLazyGhost() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 161, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\EntityManager::initializeLazyObject() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findAllLazy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 179, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findBy() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findBy() has parameter $orderBy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findBy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByWithoutCache() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 219, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByWithoutCache() has parameter $orderBy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 219, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByWithoutCache() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 219, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findOneBy() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findWithRelations() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findWithRelations() has parameter $orderBy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findWithRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByEager() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 306, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByEager() has parameter $orderBy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 306, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByEager() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 306, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\EntityManager::isLazyGhost() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 355, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 355, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\EntityManager::initializeLazyObject() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 356, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 356, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::getIdentityMapStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 408, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 408, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::getProfilingStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 439, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 439, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::saveAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 702, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 702, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::findByCriteria() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 742, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 742, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Criteria\\Criteria::$entityClass.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 744, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 744, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Criteria\\Criteria::$entityClass.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 763, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 763, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Criteria\\Criteria::$entityClass.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 764, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 764, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Criteria\\Criteria::$entityClass.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 767, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 767, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Database\\Criteria\\Criteria::$entityClass.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 792, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 792, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\EntityManager::getDomainEventStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'line' => 885, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 885, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityCreatedEvent::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityCreatedEvent::getEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityDeletedEvent::__construct() has parameter $deletedData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityDeletedEvent::getEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityDetachedEvent::getEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::entityCreated() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::entityUpdated() has parameter $changes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::entityUpdated() has parameter $newValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::entityUpdated() has parameter $oldValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::entityDeleted() has parameter $deletedData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::entityLoaded() has parameter $loadedData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityEventManager::getDomainEventStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 151, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityLoadedEvent::__construct() has parameter $loadedData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityLoadedEvent::getEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityUpdatedEvent::__construct() has parameter $changes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityUpdatedEvent::__construct() has parameter $newValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityUpdatedEvent::__construct() has parameter $oldValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\EntityUpdatedEvent::getEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\Examples\\EntityEventUsageExample::eventStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$email.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Framework\\Database\\Events\\Examples\\UserEventHandlers::sendWelcomeEmail() expects App\\Framework\\Database\\Events\\Examples\\ExampleUser, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Framework\\Database\\Events\\Examples\\UserEventHandlers::createUserProfile() expects App\\Framework\\Database\\Events\\Examples\\ExampleUser, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Framework\\Database\\Events\\Examples\\UserEventHandlers::trackUserRegistration() expects App\\Framework\\Database\\Events\\Examples\\ExampleUser, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Framework\\Database\\Events\\Examples\\UserEventHandlers::cleanupUserData() expects App\\Framework\\Database\\Events\\Examples\\ExampleUser, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user of method App\\Framework\\Database\\Events\\Examples\\UserEventHandlers::notifyUserDeletion() expects App\\Framework\\Database\\Events\\Examples\\ExampleUser, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Events\\Examples\\UserEventHandlers::logAnalyticsEvent() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$email.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Database\\Events\\Examples\\UserPremiumUpgradeEvent::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Database\\Events\\Examples\\UserRegistrationAnalyticsEvent::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Database\\Events\\Examples\\UserWelcomeEmailEvent::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Example\\UserRepository::findByEmail() should return App\\Framework\\Database\\Example\\User|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Example\\UserRepository::create() should return App\\Framework\\Database\\Example\\User but returns object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Example\\UserRepository::changeName() should return App\\Framework\\Database\\Example\\User but returns object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Example\\UserRepository::changeEmail() should return App\\Framework\\Database\\Example\\User but returns object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method Traversable::current().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 234, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::loadDashboardData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::loadProductPageData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::importUsers() has parameter $userData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::importUsers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::updateOrderStatuses() has parameter $orderUpdates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::updateOrderStatuses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::collectAnalyticsData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::monitorDatabaseHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::getUserActivityTimeline() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::generateSalesReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 232, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::preloadRelatedData() has parameter $productIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 275, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Examples\\AsyncDatabaseExample::preloadRelatedData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 275, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of method App\\Framework\\Exception\\FrameworkException::__construct() expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of method App\\Framework\\Exception\\FrameworkException::__construct() expects int, Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::__construct() has parameter $customQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::checkPdoStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 140, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::executeCustomQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 161, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::getConnectionAttributes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant PDO::ATTR_NULL_TO_STRING.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::detailed() has parameter $customQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::withCustomQueries() has parameter $customQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckResult::__construct() has parameter $additionalData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckResult::healthy() has parameter $additionalData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckResult::unhealthy() has parameter $additionalData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler::$healthChecks type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler::$lastResults type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler::runScheduledChecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler::runHealthCheck() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler::getAllResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrate() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, ReflectionException given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateRelations() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::loadRelation() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::getRelationKeyValue() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entityClass of method App\\Framework\\Database\\EntityLoaderInterface::findOneBy() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::loadHasManyRelation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entityClass of method App\\Framework\\Database\\EntityLoaderInterface::findBy() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entityClass of method App\\Framework\\Database\\EntityLoaderInterface::find() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::getForeignKeyPropertyName() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateWithRelations() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateWithRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateWithoutRelations() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, ReflectionException given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::eagerLoadRelations() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 218, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::eagerLoadRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 218, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateManyWithRelations() has parameter $dataRows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateManyWithRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::hydrateManyWithRelations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadRelations() has parameter $dataRows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadRelations() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadRelations() has parameter $entityKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadSingleRelation() has parameter $dataRows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 296, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadSingleRelation() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 296, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadSingleRelation() has parameter $entityKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 296, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadBelongsToRelation() has parameter $dataRows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadBelongsToRelation() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method findBy() on App\\Framework\\Database\\EntityLoaderInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 335, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 335, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadHasManyRelation() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 359, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadHasManyRelation() has parameter $entityKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 359, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method findBy() on App\\Framework\\Database\\EntityLoaderInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 366, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 366, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $name of method ReflectionClass::getProperty() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 374, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 374, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadOneToOneRelation() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 396, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 396, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Hydrator::batchLoadOneToOneRelation() has parameter $entityKeys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 396, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 396, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method findBy() on App\\Framework\\Database\\EntityLoaderInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 403, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 403, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $name of method ReflectionClass::getProperty() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'line' => 411, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 411, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HydratorInterface::hydrate() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HydratorInterface::hydrateWithRelations() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HydratorInterface::hydrateWithRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HydratorInterface::hydrateManyWithRelations() has parameter $dataRows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HydratorInterface::hydrateManyWithRelations() has parameter $relations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\HydratorInterface::hydrateManyWithRelations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\IdentityMap::$entities type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\IdentityMap::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyConnectionFactory::createLazyGhost() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyConnectionFactory::createLazyGhost() should return App\\Framework\\Database\\ConnectionInterface but returns object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyConnectionFactory::initializeLazyConnection() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Anonymous function has an unused use $object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\Closure', 'identifier' => 'closure.unusedUse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::createLazyGhost() should return object but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::loadRelation() has parameter $propertyMetadata with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::loadRelationByType() has parameter $propertyMetadata with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::loadBelongsToRelation() has parameter $propertyMetadata with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::loadHasManyRelation() has parameter $propertyMetadata with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 217, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::loadHasManyRelation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 217, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::loadOneToOneRelation() has parameter $propertyMetadata with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::queryRelatedData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::hydrateRelatedEntities() has parameter $dataRows with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 286, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::hydrateRelatedEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 286, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::hydrateEntity() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 310, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 310, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\LazyLoader::getRelationAccessStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'line' => 483, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 483, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\EntityMetadata::__construct() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\EntityMetadata::__construct() has parameter $reflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->columnName" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, ReflectionException given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::extractProperties() has parameter $reflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::extractProperties() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::extractRelations() has parameter $reflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::extractRelations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::createRelationMetadataForEntityProperty() has parameter $parentReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::hasConstructorParameter() has parameter $reflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::createBelongsToRelationMetadata() has parameter $parentReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::findForeignKeyProperty() has parameter $parentReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::createHasRelationMetadata() has parameter $parentReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 267, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->idColumn" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 269, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->idColumn" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 272, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::extractRelationMetadata() has parameter $classReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->idColumn" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 312, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::extractPropertyMetadata() has parameter $classReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 337, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::getColumnName() has parameter $classReflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->name" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 391, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::analyzeType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 397, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 397, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::getEntityAttribute() has parameter $reflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 444, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 444, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 467, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 467, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::findIdProperty() has parameter $properties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 475, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 475, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\MetadataExtractor::findIdProperty() has parameter $reflection with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 475, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 475, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'line' => 508, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 508, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Metadata\\MetadataRegistry::$metadata type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/PropertyMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Metadata\\PropertyMetadata::__construct() has parameter $allTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/PropertyMetadata.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/PropertyMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\CacheMiddleware::__construct() has parameter $cacheableOperations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\CacheMiddleware::serializeResult() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\CacheMiddleware::deserializeResult() has parameter $cachedData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 149, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\CacheMiddleware::getCacheStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\MiddlewarePipeline::addMultiple() has parameter $middleware with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\MiddlewarePipeline::getMiddleware() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\QueryContext::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\QueryContext::__construct() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Middleware\\RetryMiddleware::__construct() has parameter $retryableExceptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getMessage() on Throwable|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker constructor invoked with 0 parameters, 1-3 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Database\\Middleware\\UnifiedRetryMiddleware::$retryManager is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker::isHealthy().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\MiddlewareConnection::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Database\\Migration\\MigrationVersion::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::INVALID_ARGUMENT.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Database\\Migration\\MigrationVersion::fromDateTime().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Migration\\MigrationCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, Throwable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Database\\Exception\\DatabaseException constructor expects int, Throwable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatusCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Migration\\MigrationStatusCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatusCollection.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatusCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Migration\\MigrationVersionCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Migration\\MigrationVersionCollection::getLatest() should return App\\Framework\\Database\\Migration\\MigrationVersion|null but returns App\\Framework\\Database\\Migration\\MigrationVersion|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::hasConnection().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::getConnectionNames().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::getConnectionNames().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Commands\\DatabaseHealthCheckCommand::displayResults() has parameter $result with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController implements unknown interface App\\Framework\\Http\\Controller.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 24, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'interface.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $viewRenderer of method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::__construct() has invalid type App\\Framework\\View\\ViewRenderer.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::$viewRenderer has unknown class App\\Framework\\View\\ViewRenderer as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::dashboard() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::getConnectionNames().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\ViewResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::dashboard() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\ViewResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method render() on an unknown class App\\Framework\\View\\ViewRenderer.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::stats() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::stats() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::queries() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\QueryProfiler::getStatistics().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\SlowQueryDetector::getSlowQueries().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::queries() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\QueryProfiler::getRecentQueries().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::tables() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::tables() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::tables() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::indexes() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::indexes() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::indexes() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::specificStats() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::specificStats() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::specificStats() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::profiling() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::profiling() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\ProfilingDashboard::getSummary().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\ProfilingDashboard::getTopQueries().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\ProfilingDashboard::getQueryTypeDistribution().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\ProfilingDashboard::getHourlyStatistics().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController::getOptimizer() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 226, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController implements unknown interface App\\Framework\\Http\\Controller.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 19, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'interface.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $viewRenderer of method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::__construct() has invalid type App\\Framework\\View\\ViewRenderer.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::$viewRenderer has unknown class App\\Framework\\View\\ViewRenderer as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::dashboard() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::getConnectionNames().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\ViewResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::dashboard() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\ViewResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method render() on an unknown class App\\Framework\\View\\ViewRenderer.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::connectionHealth() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::hasConnection().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::connectionHealth() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::connectionHealth() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::allConnectionsHealth() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\DatabaseManager::getConnectionNames().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController::allConnectionsHealth() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController implements unknown interface App\\Framework\\Http\\Controller.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 18, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'interface.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $viewRenderer of method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::__construct() has invalid type App\\Framework\\View\\ViewRenderer.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::$viewRenderer has unknown class App\\Framework\\View\\ViewRenderer as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::dashboard() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\ViewResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::dashboard() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\ViewResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method render() on an unknown class App\\Framework\\View\\ViewRenderer.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::hourlyStats() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::hourlyStats() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::dailyStats() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::dailyStats() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::slowQueries() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::slowQueries() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::queryTrend() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::queryTrend() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::queryDetails() has invalid return type App\\Framework\\Http\\Response\\Response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\Response\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController::queryDetails() should return App\\Framework\\Http\\Response\\Response but returns App\\Framework\\Http\\Response\\JsonResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 'line' => 554, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 554, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\QueryProfiler::getStatistics().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\QueryProfiler::getRecentQueries().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $query of method App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger::logQueryDetail() has invalid type App\\Framework\\Database\\Profiling\\ProfiledQuery.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $sql on an unknown class App\\Framework\\Database\\Profiling\\ProfiledQuery.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $sql on an unknown class App\\Framework\\Database\\Profiling\\ProfiledQuery.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $parameters on an unknown class App\\Framework\\Database\\Profiling\\ProfiledQuery.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $time on an unknown class App\\Framework\\Database\\Profiling\\ProfiledQuery.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $connection on an unknown class App\\Framework\\Database\\Profiling\\ProfiledQuery.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoConnection::lastInsertId() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\PdoResult::$rows type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoResult::fetch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoResult::fetchAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoResult::fetchColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PdoResult::getIterator() return type with generic class ArrayIterator does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\PooledConnection::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfileSummary::__construct() has parameter $queryTypeDistribution with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfileSummary::getMostCommonQueryType() should return string|null but returns int|string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfileSummary::getQueryTypeDistributionWithPercentages() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfileSummary::getRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfileSummary::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 185, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConfig::__construct() has parameter $sensitiveParameterPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::query() should return App\\Framework\\Database\\ResultInterface but returns App\\Framework\\Database\\ResultInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::queryColumn() should return array but returns array|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingConnection::getProfilingStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 265, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\ProfilingDashboard::$profilingConnections type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingDashboard::getOverview() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingDashboard::export() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 289, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingDashboard::exportAsHtml() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 299, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 315, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 315, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\ProfilingDashboard::getRegisteredConnections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'line' => 364, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 364, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalysis::__construct() has parameter $indexRecommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalysis::__construct() has parameter $issues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalysis::__construct() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalysis::getTopRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalysis::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeSelectStatements() has parameter $issues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeSelectStatements() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeWhereClause() has parameter $indexRecommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeWhereClause() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeJoins() has parameter $issues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeJoins() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeAggregations() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeSubqueries() has parameter $issues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 185, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzeSubqueries() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 185, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzePerformanceMetrics() has parameter $issues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::analyzePerformanceMetrics() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 247, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::calculateOptimizationScore() has parameter $issues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::calculateOptimizationScore() has parameter $suggestions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::batchAnalyze() has parameter $profiles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 317, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 317, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::batchAnalyze() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 317, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 317, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::getOptimizationSummary() has parameter $analyses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 331, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryAnalyzer::getOptimizationSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 331, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\QueryLogger::$loggedQueries type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::buildLogContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::sanitizeParameters() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::sanitizeParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::captureStackTrace() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'function\' on array{function: string, line?: int, file?: string, class?: class-string, type?: \'->\'|\'::\', args?: array, object?: object} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 226, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::getLoggedQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::getSlowQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 250, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 278, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::exportAsJson() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 363, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 363, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryLogger::getLogStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'line' => 396, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 396, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfile::__construct() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $startTimestamp of method App\\Framework\\Database\\Profiling\\QueryProfile::__construct() has invalid type App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\QueryProfile::$startTimestamp has unknown class App\\Framework\\Database\\Events\\Timestamp as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $endTimestamp of method App\\Framework\\Database\\Profiling\\QueryProfile::__construct() has invalid type App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\QueryProfile::$endTimestamp has unknown class App\\Framework\\Database\\Events\\Timestamp as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfile::getNormalizedSql() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfile::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method format() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method format() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\QueryProfiler::$profiles type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\QueryProfiler::$activeProfiles type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfiler::startProfile() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method fromClock() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method fromClock() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $peakMemoryUsage of class App\\Framework\\Database\\Profiling\\QueryProfile constructor expects int, float|int<0, max> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfiler::profile() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfiler::getProfiles() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfiler::getSlowQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\QueryProfiler::getProfilesByType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::__construct() has parameter $optimizationData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getOptimizationSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getConnectionsByPriority() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getTopSlowQueryPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getAllIndexSuggestions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getPerformanceIssuesBySeverity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getOptimizationRoadmap() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 169, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::getOptimizationImpact() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::__construct() has parameter $performanceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::getOverallMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::getPerformanceTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::calculateTrend() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::getPerformanceRecommendations() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::getPerformanceRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport::__construct() has parameter $connectionStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport::__construct() has parameter $profiles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport::__construct() has parameter $slowQueries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport::getTopSlowQueries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport::getSlowQueryPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\SlowQueryAlert::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $timestamp of method App\\Framework\\Database\\Profiling\\SlowQueryAlert::__construct() has invalid type App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\SlowQueryAlert::$timestamp has unknown class App\\Framework\\Database\\Events\\Timestamp as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining values: int|int<11, max>', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\SlowQueryAlert::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method format() on an unknown class App\\Framework\\Database\\Events\\Timestamp.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\SlowQueryDetector::$slowQueryPatterns is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\SlowQueryDetector::$slowQueryPatterns type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\SlowQueryDetector::$alertThresholds type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Profiling\\SlowQueryDetector::$recentSlowQueries type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $timestamp of class App\\Framework\\Database\\Profiling\\SlowQueryAlert constructor expects App\\Framework\\Database\\Events\\Timestamp, DateTimeImmutable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $interval of method DateTimeImmutable::sub() expects DateInterval, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\SlowQueryDetector::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\SlowQueryDetector::getSlowQueryStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 297, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $interval of method DateTimeImmutable::sub() expects DateInterval, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'line' => 300, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 300, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Profiling\\SlowQueryPattern::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\Examples\\QueryBuilderUsageExample::userDashboardStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 309, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 344, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 344, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\Examples\\QueryBuilderUsageExample::salesAnalytics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'line' => 360, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 360, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\QueryBuilder::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilder.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory::$identityMap is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory::$hydrator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$select type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$joins type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$where type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$groupBy type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$having type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$orderBy type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$parameters type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::$parameterIndex is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::whereIn() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 225, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::whereNotIn() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::whereRaw() has parameter $bindings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 308, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::getParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 467, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 467, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::execute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 475, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 475, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::getEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 494, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 494, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getMetadata() on App\\Framework\\Database\\Metadata\\MetadataRegistry|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 501, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 501, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder::first() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'line' => 540, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 540, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::$replicaHealth type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::$replicaMetrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::$connectionCounts type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::$responseTimeHistory type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::__construct() has parameter $replicaConnections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::selectRoundRobin() has parameter $healthyReplicas with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::selectRandom() has parameter $healthyReplicas with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::selectLeastConnections() has parameter $healthyReplicas with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::selectWeighted() has parameter $healthyReplicas with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $configIndex of method App\\Framework\\Database\\Config\\ReadWriteConfig::getConnectionWeight() expects int, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $configIndex of method App\\Framework\\Database\\Config\\ReadWriteConfig::getMaxConnections() expects int, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::selectByResponseTime() has parameter $healthyReplicas with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::getHealthyReplicas() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method DateInterval::getTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 256, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::getRoutingStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 352, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 352, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::getWeightDistribution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 400, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 400, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $configIndex of method App\\Framework\\Database\\Config\\ReadWriteConfig::getConnectionWeight() expects int, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 409, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 409, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::calculateSuccessRate() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 434, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 434, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'line' => 562, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 562, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::$queryMetrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::$connectionMetrics is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::$connectionMetrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getOverviewMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getQueryMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getConnectionHealthMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 144, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::testConnectionHealth() has parameter $connection with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 161, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::testConnectionHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 161, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getPerformanceMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 186, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getSlowestQueryType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 205, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getFastestQueryType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 223, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 241, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor::getQueryTypeMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 308, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $context (App\\Framework\\Exception\\ExceptionContext) in call to App\\Framework\\Database\\Exception\\DatabaseException constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $context (App\\Framework\\Exception\\ExceptionContext) in call to App\\Framework\\Database\\Exception\\DatabaseException constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $context (App\\Framework\\Exception\\ExceptionContext) in call to App\\Framework\\Database\\Exception\\DatabaseException constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 240, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\ReadWriteConnection::$readConnections type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::__construct() has parameter $readConnections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::execute() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::query() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::queryOne() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::queryOne() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::queryColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::queryColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::queryScalar() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ReadWriteConnection::getReadConnections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Interface App\\Framework\\Database\\ResultInterface extends generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'line' => 7, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 7, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\ResultInterface::fetchColumn() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Blueprint::$columns type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Blueprint::$indexes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Blueprint::$foreignKeys type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Blueprint::$commands type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::enum() has parameter $allowed with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 223, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::unique() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::index() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::fulltext() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::spatialIndex() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 259, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::foreign() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 269, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::dropColumn() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::dropIndex() has parameter $index with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 297, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::dropUnique() has parameter $index with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 304, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 304, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::dropForeign() has parameter $index with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 318, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 318, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Blueprint::addColumn() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'line' => 335, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 335, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\ColumnDefinition::$parameters type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\ColumnDefinition::__construct() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand::$columns type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand::__construct() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand::$index type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand::__construct() has parameter $index with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand::$index type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand::__construct() has parameter $index with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\DatabaseManager::getConnection() invoked with 1 parameter, 0 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Database\\Migration\\MigrationVersion::fromDateTime().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $tableDef of method App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator::generateCreateTableCode() expects array, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator::generateCreateTableCode() has parameter $tableDef with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 383, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\ForeignKeyDefinition::$columns type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\ForeignKeyDefinition::$referencedColumns type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\ForeignKeyDefinition::__construct() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\ForeignKeyDefinition::references() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between $this(App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType)&App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType::FUNCTIONAL and App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType::FUNCTIONAL is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between $this(App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType)&App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType::FUNCTIONAL and App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType::FUNCTIONAL is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between $this(App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType)&App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType::FUNCTIONAL and App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType::FUNCTIONAL is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 140, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::getRecommendationsFromQueryLogger() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Profiling\\QueryLogger::getQueryStatistics().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzeQueryPattern() has parameter $stats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzeQueryPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractTablesFromQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 301, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractConditionsFromQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractJoinsFromQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 345, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 345, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractOrderByFromQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 377, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 377, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractGroupByFromQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 406, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 406, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::generateIndexName() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 435, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 435, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::getMySqlRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 454, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 454, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractColumnsFromSampleQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 513, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 513, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 1 on array{list, list} in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 524, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 524, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::getPostgreSqlRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 540, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 540, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::parsePostgreSqlArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 611, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 611, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzeMySqlQuery() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 649, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 649, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzeMySqlQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 649, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 649, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 660, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 660, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between mixed and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 661, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'Type null has already been eliminated from mixed.', 'nodeLine' => 661, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::getColumnsForKey() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 703, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 703, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzePostgreSqlQuery() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 734, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 734, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzePostgreSqlQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 734, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 734, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzePostgreSqlPlan() has parameter $plan with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 768, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 768, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::analyzePostgreSqlPlan() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 768, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 768, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::extractColumnsFromPostgreSqlFilter() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 801, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 801, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 1 on array{list, list} in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 808, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 808, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::generateMySqlIndexSql() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 818, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 818, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Database\\Schema\\Index\\MySQLIndex::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 825, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 825, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::generatePostgreSqlIndexSql() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 833, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 833, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $type of static method App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex::partial() expects App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType, bool given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 841, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 841, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 843, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 843, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender::generateSqliteIndexSql() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 852, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 852, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Database\\Schema\\Index\\SQLiteIndex::create() invoked with 3 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'line' => 862, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 862, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\IndexDefinition::$columns type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\IndexDefinition::__construct() has parameter $columns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\MySQLSchemaCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\MySQLSchemaCompiler::compileAlterTable() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler::compileAlterTable() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler::compileAlterTable() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\Schema\\Schema::$commands type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\Schema::toSql() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SchemaCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Schema\\SchemaCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SchemaCompiler.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SchemaCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::serialize() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Metadata\\EntityMetadata::getProperties().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\TypeConverter::convertToDatabaseValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::deserialize() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Serialization\\SerializationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Serialization\\SerializationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\TypeConverter::convertToPHPValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::serializeCollection() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::serializeCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::deserializeCollection() has parameter $serializedEntities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::deserializeCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\Serialization\\EntitySerializer::isCompatible() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\Metadata\\EntityMetadata::getProperties().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Database\\TypeConverter and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\TypeConverter::convertFromDatabase().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor::buildProcedureCallSql() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 235, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor::buildFunctionCallSql() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 243, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor::buildMySqlProcedureCall() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor::buildMySqlFunctionCall() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 267, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor::buildPostgreSqlProcedureCall() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor::buildPostgreSqlFunctionCall() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\StoredProcedure\\StoredProcedureManager::$connection is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\EmailCaster::fromDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\EmailCaster::toDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\JsonCaster::fromDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\JsonCaster::toDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\PhoneNumberCaster::fromDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\PhoneNumberCaster::toDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\TypeCasterInterface::fromDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\TypeCasterInterface::toDatabase() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $fullClassName in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Dead catch - Exception is never thrown in the try block.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\CatchWithUnthrownExceptionNode', 'identifier' => 'catch.neverThrown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\TypeCaster\\TypeCasterRegistry::getAllKnownTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $fullClassName in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Database\\Exception\\DatabaseException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\BulkOperations::bulkInsertSameType() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\BulkOperations::bulkUpdateSameType() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\BulkOperations::bulkDeleteSameType() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $ids in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 225, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\UnitOfWork\\ChangeTracker::$originalData type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\ChangeTracker::getEntitiesByState() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 159, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\ChangeTracker::getAllTrackedEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\ChangeTracker::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 218, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\ChangeTracker::extractEntityData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Database\\UnitOfWork\\UnitOfWork::$hydrator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $target of method App\\Framework\\Database\\UnitOfWork\\UnitOfWork::mergeEntityChanges() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $entity of method App\\Framework\\Database\\UnitOfWork\\ChangeTracker::markDirty() expects object, object|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\UnitOfWork::merge() should return object but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $context (App\\Framework\\Exception\\ExceptionContext) in call to App\\Framework\\Database\\Exception\\DatabaseException constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method commit() on App\\Framework\\Database\\ConnectionInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $context (App\\Framework\\Exception\\ExceptionContext) in call to App\\Framework\\Database\\Exception\\DatabaseException constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\UnitOfWork::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 223, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $connection of method App\\Framework\\Database\\UnitOfWork\\BulkOperations::bulkInsert() expects App\\Framework\\Database\\ConnectionInterface, App\\Framework\\Database\\ConnectionInterface|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $connection of method App\\Framework\\Database\\UnitOfWork\\BulkOperations::bulkUpdate() expects App\\Framework\\Database\\ConnectionInterface, App\\Framework\\Database\\ConnectionInterface|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 290, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $connection of method App\\Framework\\Database\\UnitOfWork\\BulkOperations::bulkDelete() expects App\\Framework\\Database\\ConnectionInterface, App\\Framework\\Database\\ConnectionInterface|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 309, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method execute() on App\\Framework\\Database\\ConnectionInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 363, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 363, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method execute() on App\\Framework\\Database\\ConnectionInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 403, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 403, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method execute() on App\\Framework\\Database\\ConnectionInterface|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 417, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 417, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Database\\UnitOfWork\\UnitOfWork::mergeEntityChanges() has parameter $metadata with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'line' => 426, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 426, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\DateTime\\SystemClock::now() has App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException in PHPDoc @throws tag but it\'s not thrown.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'throws.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Dead catch - Exception is never thrown in the try block.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\CatchWithUnthrownExceptionNode', 'identifier' => 'catch.neverThrown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Debug\\DebugEntry::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Debug\\Debugger::dumpArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Constant App\\Framework\\Debug\\Formatters\\ConsoleFormatter::GRAY is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-used-class-constants', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassConstantsNode', 'identifier' => 'classConstant.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Debug\\Formatters\\ConsoleFormatter::formatValue() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/helpers.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function debug_array() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/helpers.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Debug/helpers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InFunctionNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalysisResult::__construct() has parameter $colorPalette with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalysisResult::__construct() has parameter $colorsByFormat with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalysisResult::__construct() has parameter $contrastAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalysisResult::__construct() has parameter $duplicateColors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalysisResult::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::analyzeColorHarmony() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::analyzeColorHarmony() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::analyzeAccessibility() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $num of function round expects float|int, float|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::collectAllColors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateColorPalette() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 207, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateColorPalette() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 207, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::groupColorsByFormat() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 255, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::groupColorsByFormat() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 255, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::analyzeContrasts() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::analyzeContrasts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::findDuplicateColors() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 312, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::findDuplicateColors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 312, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rgb of method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::calculateRelativeLuminance() has invalid type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 374, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 374, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $red on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 376, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $green on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 377, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 377, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $blue on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 378, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 378, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rgb of method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::rgbToHsl() has invalid type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 399, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 399, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $red on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 401, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 401, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $green on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 402, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $blue on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 403, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 403, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rgb of method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::calculateLightness() has invalid type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 447, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 447, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $blue on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 449, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 449, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $green on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 449, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 449, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $red on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 449, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 449, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $blue on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 476, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 476, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $blue on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 476, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 476, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $green on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 476, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 476, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $green on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 476, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 476, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $red on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 476, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 476, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $red on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 476, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 476, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::findColorOnlyIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 503, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 503, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::calculateAccessibilityScore() has parameter $colorOnlyIndicators with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 542, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 542, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::calculateAccessibilityScore() has parameter $contrastIssues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 542, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 542, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateRecommendations() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateRecommendations() has parameter $colorsByFormat with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateRecommendations() has parameter $duplicates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateRecommendations() has parameter $palette with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ColorAnalyzer::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetectionResult::__construct() has parameter $patternStatistics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetectionResult::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetectionResult::getDominantPattern() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetectionResult::getActionableRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetectionResult::getPatternDistribution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetectionResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 151, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $classNames of method App\\Framework\\Design\\Parser\\ClassNameParser::detectPatterns() expects array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::analyzeBemPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::analyzeUtilityPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 140, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::findComponentCandidates() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generatePatternStatistics() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 218, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generatePatternStatistics() has parameter $patterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 218, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generatePatternStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 218, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generateRecommendations() has parameter $bemComponents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generateRecommendations() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generateRecommendations() has parameter $traditionalComponents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generateRecommendations() has parameter $utilityComponents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::assessUtilityCoverage() has parameter $classes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 323, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between 4|5 and 0 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 349, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ComponentDetector::getComponentSuggestions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'line' => 379, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 379, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionCheckResult::__construct() has parameter $categoryScores with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionCheckResult::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionCheckResult::__construct() has parameter $violations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::checkNamingConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::checkSelectorSpecificity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::checkPropertyOrganization() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 169, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::checkCustomPropertyConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::checkAccessibilityPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 277, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::checkBemConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 336, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::findPropertyOrderIndex() has parameter $order with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 370, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 370, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::generateRecommendations() has parameter $scores with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 384, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::generateRecommendations() has parameter $violations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 384, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\ConventionChecker::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 384, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis::__construct() has parameter $overallStatistics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis::getCriticalIssues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis::getQuickWins() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis::getDevelopmentRoadmap() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: string', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis::exportReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 298, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 302, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer::analyzeDesignSystem() has parameter $cssFiles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $sourceFiles of class App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis constructor expects array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $parseResults of class App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis constructor expects array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $sourceFiles of class App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis constructor expects array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $parseResults of class App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis constructor expects array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer::quickAnalyze() has parameter $cssFiles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer::quickAnalyze() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Design\\Parser\\CssParseResult::getStatistics().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer::combineParseResults() has parameter $parseResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer::calculateOverallStatistics() has parameter $parseResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer::calculateOverallStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $missingTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $tokenHierarchy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $tokenUsage with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $tokensByType with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $unusedTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalysisResult::__construct() has parameter $usedTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::groupTokensByType() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::groupTokensByType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::analyzeTokenHierarchy() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::analyzeTokenHierarchy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset string on array{} in isset() does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset string on array{} in isset() does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::analyzeTokenUsage() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::analyzeTokenUsage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::findUnusedTokens() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::findUnusedTokens() has parameter $usage with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::findUnusedTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::findMissingStandardTokens() has parameter $tokensByType with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 186, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::findMissingStandardTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 186, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::generateRecommendations() has parameter $missingTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::generateRecommendations() has parameter $tokensByType with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::generateRecommendations() has parameter $unusedTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::cleanupHierarchy() has parameter $hierarchy with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 305, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Analyzer\\TokenAnalyzer::cleanupHierarchy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 305, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::getAllComponents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::getByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::getByPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::getComponentVariants() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::getCategoryCounts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::getPatternCounts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::groupByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Component\\ComponentRegistry::searchComponents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::detectBemPatterns() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::detectBemPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::detectUtilityClasses() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::detectUtilityClasses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::detectComponentClasses() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::detectComponentClasses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::analyzeConventions() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 211, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\ClassNameParser::analyzeConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 211, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CssParseResult::__construct() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CssParseResult::__construct() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CssParseResult::__construct() has parameter $rules with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CssParseResult::__construct() has parameter $statistics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CustomPropertyParser::extractFromContent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CustomPropertyParser::extractFromFiles() has parameter $filePaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Parser\\CustomPropertyParser::extractFromFiles() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $content of method App\\Framework\\Design\\Parser\\CustomPropertyParser::extractFromContent() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::analyzePalette() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Design\\ValueObjects\\CssColor::$value.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Design\\ValueObjects\\CssColor::$value.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::findAccessibilityIssues() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::findAccessibilityIssues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::detectColorScheme() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::generateColorHarmony() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::analyzeColorDistribution() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 151, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::analyzeColorDistribution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 151, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::analyzeColors() has parameter $parseResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$colorsByFormat.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 232, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$totalColors.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$colorsByFormat.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::validateNamingConventions() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ColorAnalyzer::validateNamingConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectBemComponents() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectBemComponents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectUtilityPatterns() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectUtilityPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectStructurePatterns() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectStructurePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeResponsivePatterns() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeResponsivePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeComponentComplexity() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeComponentComplexity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeAtomicDesignPatterns() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeAtomicDesignPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::validateNamingConventions() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::validateNamingConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectComponentRelationships() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectComponentRelationships() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::suggestImprovements() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::suggestImprovements() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeComponentReusability() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 281, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::analyzeComponentReusability() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 281, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::detectComponents() has parameter $parseResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 311, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::categorizeUtilityClass() has parameter $patterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 378, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 378, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ComponentDetector::countVariants() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'line' => 419, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 419, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateBemNaming() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateBemNaming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateKebabCase() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateKebabCase() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateCustomPropertyNaming() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateCustomPropertyNaming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateSemanticNaming() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateSemanticNaming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: string', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateDesignTokenNaming() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateDesignTokenNaming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateAccessibilityNaming() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateAccessibilityNaming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateComponentHierarchy() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateComponentHierarchy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::analyzeNamingConsistency() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::analyzeNamingConsistency() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::suggestNamingImprovements() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 267, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::suggestNamingImprovements() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 267, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateFrameworkConventions() has parameter $cssClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::validateFrameworkConventions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::getImprovementReasons() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 408, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 408, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\ConventionChecker::checkConventions() has parameter $parseResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'line' => 434, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 434, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeNamingPatterns() should return array but returns array|string, int|string>|float|int<0, max>>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::detectTokenRelationships() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::detectTokenRelationships() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::validateTokenValues() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::validateTokenValues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeTokenUsage() has parameter $cssReferences with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeTokenUsage() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeTokenUsage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::suggestOptimizations() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::suggestOptimizations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::generateTokenDocumentation() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 200, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::generateTokenDocumentation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 200, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::calculateTokenCoverage() has parameter $hardcodedValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::calculateTokenCoverage() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::calculateTokenCoverage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::validateDesignSystemConsistency() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::validateDesignSystemConsistency() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeColorScales() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeColorScales() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeSpacingScales() has parameter $customProperties with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 309, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeSpacingScales() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 309, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\Service\\TokenAnalyzer::analyzeTokens() has parameter $parseResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 343, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $recommendations of class App\\Framework\\Design\\Analyzer\\TokenAnalysisResult constructor expects array, array|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'line' => 377, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 370, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::__construct() has parameter $classes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::createBem() has parameter $classes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::createBem() has parameter $elements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::createBem() has parameter $modifiers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::createUtility() has parameter $classes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\ComponentPattern::createComponent() has parameter $classes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $modifiers in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClassName.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssClassName::isBemElement() should return bool but returns int|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClassName.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClassName.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssColor::__construct() has parameter $hslValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssColor::__construct() has parameter $oklchValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $rgbColor of method App\\Framework\\Design\\ValueObjects\\CssColor::__construct() has invalid type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Design\\ValueObjects\\CssColor::$rgbColor has unknown class App\\Framework\\Core\\ValueObjects\\RGBColor as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to static method fromHex() on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Core\\ValueObjects\\RGBColor not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Core\\ValueObjects\\RGBColor not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssColor::toRGB() has invalid return type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method toHex() on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssColor::hslToRgb() has invalid return type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Core\\ValueObjects\\RGBColor not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 225, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssColor::oklchToRgb() has invalid return type App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 232, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Core\\ValueObjects\\RGBColor not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'line' => 260, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 260, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getRulesBySelectorType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getPropertiesByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getDesignTokensByType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getClassNamesByPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getBemClasses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getUtilityClasses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getColorAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getNamingConventionAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 197, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getDominantConvention() has parameter $conventions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getSelectorTypeStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getPropertyCategoryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssParseResult::getTokenTypeStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssProperty::getCustomPropertyReferences() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 1 on array{list, list} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssProperty::parseNumericValue() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssRule::getCustomPropertyReferences() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssRule::getSpecificityAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\CssRule::categorize() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match_all expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 1 on array{list, list} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 1 on array{list, list} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match_all expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis::getCriticalIssues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis::getQuickWins() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis::getDevelopmentRoadmap() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis::exportReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 200, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Design\\ValueObjects\\DesignToken::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method toArray() on an unknown class App\\Framework\\Core\\ValueObjects\\RGBColor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $templates of class App\\Framework\\Discovery\\Results\\DiscoveryRegistry constructor expects App\\Framework\\Discovery\\Results\\TemplateRegistry, App\\Framework\\Discovery\\Results\\TemplateRegistry|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Cache\\RegistryCacheManager::getCachedAttributes() should return App\\Framework\\Discovery\\Results\\AttributeRegistry|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Cache\\RegistryCacheManager::getCachedInterfaces() should return App\\Framework\\Discovery\\Results\\InterfaceRegistry|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Cache\\RegistryCacheManager::getCachedTemplates() should return App\\Framework\\Discovery\\Results\\TemplateRegistry|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Cache\\RegistryCacheManager::extractValue() has parameter $cacheItem with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 215, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Cache\\RegistryCacheManager::extractValue() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Discovery\\DiscoveryCache not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method flush() on an unknown class App\\Framework\\Discovery\\DiscoveryCache.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Discovery\\DiscoveryCache not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method flush() on an unknown class App\\Framework\\Discovery\\DiscoveryCache.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Contracts\\DiscoveryProcessor::getHealthStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\DiscoveryDataCollector::addAttributes() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\DiscoveryDataCollector::addInterfaceImplementations() has parameter $implementations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::add() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $mapping of method App\\Framework\\Discovery\\Results\\InterfaceRegistry::add() expects App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping, (int|string) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\DiscoveryDataCollector::addRoutes() has parameter $routes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\DiscoveryDataCollector::addTemplates() has parameter $templates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::add() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\DiscoveryDataCollector::getMemoryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Config\\TypedConfiguration::appConfig().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\CacheCompressionEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\CacheHitEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::humanReadable().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\ChunkProcessingEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::humanReadable().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::humanReadable().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent::__construct() has parameter $directories with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\EventAggregator::$memoryPressureEvents type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\EventAggregator::$memoryCleanupEvents type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\EventAggregator::$memoryLeakEvents type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\EventAggregator::$chunkProcessingEvents type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\EventAggregator::$strategyChangeEvents type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\EventAggregator::$statistics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getMemoryPressureAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getCleanupEffectivenessAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 200, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getMemoryLeakAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getChunkPerformanceAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 277, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getStrategyChangeAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 333, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 333, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getDiscoveryAnalytics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 367, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 367, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $microtime of static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromFloat() expects float, App\\Framework\\Core\\ValueObjects\\Timestamp given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 376, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 404, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 404, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\EventAggregator::trimEventHistory() has parameter $events with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'line' => 412, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 412, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\FileProcessedEvent::__construct() has parameter $discoveredItems with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\FileProcessedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\MemoryCleanupEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent::getRecommendedActions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\MemoryPressureEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent::__construct() has parameter $triggerMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'adaptive\'|\'aggressive\'|\'batch\'|\'conservative\'|\'streaming\' on array{streaming: 1, conservative: 2, batch: 3, adaptive: 4, aggressive: 5} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'adaptive\'|\'aggressive\'|\'batch\'|\'conservative\'|\'streaming\' on array{streaming: 1, conservative: 2, batch: 3, adaptive: 4, aggressive: 5} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent::__construct() has parameter $bottlenecks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $metrics of method App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent::__construct() has invalid type App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent::$metrics has unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent::toTelemetryData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $snapshot on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $throughput on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $operationSize on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $memoryEfficiency on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $cacheEfficiency on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $performanceScore on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getEfficiencyRating() on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $performanceScore on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $performanceScore on an unknown class App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Exceptions\\DiscoveryException::memoryExhausted() should return App\\Framework\\Discovery\\Exceptions\\DiscoveryException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::MEMORY_LIMIT_EXCEEDED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::FILESYSTEM_READ_ERROR.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::CACHE_OPERATION_FAILED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::FILE_PROCESSING_FAILED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::REFLECTION_FAILED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Exceptions\\DiscoveryException::emergencyStop() has parameter $memoryStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 131, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::EMERGENCY_STOP_TRIGGERED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::VAL_CONFIGURATION_INVALID.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Exceptions\\DiscoveryException::timeout() should return App\\Framework\\Discovery\\Exceptions\\DiscoveryException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 179, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::OPERATION_TIMEOUT.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Exceptions\\DiscoveryException::concurrentDiscovery() should return App\\Framework\\Discovery\\Exceptions\\DiscoveryException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::RESOURCE_CONFLICT.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::DATA_CORRUPTION_DETECTED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::PERMISSION_DENIED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Exceptions\\DiscoveryException::resourceLimitExceeded() should return App\\Framework\\Discovery\\Exceptions\\DiscoveryException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 254, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 254, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::RESOURCE_LIMIT_EXCEEDED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 257, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::DEPENDENCY_MISSING.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 275, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::createForDevelopment() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::createForProduction() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::createForTesting() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 131, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::createWithCustomConfig() has parameter $attributeMappers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::createWithCustomConfig() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::createWithCustomConfig() has parameter $targetInterfaces with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::buildAttributeMappers() has parameter $customMappers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::buildAttributeMappers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::buildTargetInterfaces() has parameter $customInterfaces with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::buildTargetInterfaces() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::$pathProvider in isset() is not nullable nor uninitialized.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 299, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.initializedProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::$cache in isset() is not nullable nor uninitialized.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 303, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.initializedProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory::$clock in isset() is not nullable nor uninitialized.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'line' => 307, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 307, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.initializedProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::checkDiscoveryService() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method test() on App\\Framework\\Discovery\\UnifiedDiscoveryService|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::checkCacheSystem() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getHealthStatus() on App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getCacheMetrics() on App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::checkMemoryManagement() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 203, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getMemoryStatus() on App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function method_exists() with App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager|null and \'getStatistics\' will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $object_or_class of function method_exists expects object|string, App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::checkOverallSystem() has parameter $checks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::checkOverallSystem() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::generateHealthMessage() has parameter $checks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 343, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::generateRecommendations() has parameter $checks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 364, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 364, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'line' => 364, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 364, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between mixed and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Type null has already been eliminated from mixed.', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/DiscoveryVisitor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Interfaces\\DiscoveryVisitor::getResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/DiscoveryVisitor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/DiscoveryVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\BatchParameters::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager::$memoryMonitor is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager::checkForMemoryLeaks() has parameter $memoryHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager::changeStrategy() has parameter $triggerMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 331, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager::$strategy is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'line' => 338, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 338, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager::$warningThreshold is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'line' => 341, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 341, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager::$criticalThreshold is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'line' => 342, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 342, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\GuardResult::__construct() has parameter $actions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\GuardResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\GuardStatistics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Memory\\MemoryGuard::$memoryHistory type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\MemoryLeakInfo::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Memory\\MemoryStatusInfo::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\MemoryGuard::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 235, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin::$mappers is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin::__construct() has parameter $attributeMappers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin::$visitors (array) does not accept array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Discovery\\Visitors\\RouteVisitor not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method reset() on an unknown class App\\Framework\\Discovery\\Visitors\\RouteVisitor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin::getVisitors() should return array but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Processing\\AdaptiveChunker::$performanceHistory type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\AdaptiveChunker::createChunks() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\AdaptiveChunker::analyzeFiles() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 221, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 221, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function max expects non-empty-array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'list might be empty.', 'nodeLine' => 250, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\AdaptiveChunker::createAdaptiveChunks() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 267, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\AdaptiveChunker::createAdaptiveChunks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 267, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between App\\Framework\\Discovery\\Memory\\MemoryStatus::CRITICAL and App\\Framework\\Discovery\\Memory\\MemoryStatus::CRITICAL is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 326, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 324, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 398, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 398, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\AdaptiveChunker::calculateAverageChunkSize() has parameter $chunks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 410, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 410, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\AdaptiveChunker::getPerformanceStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'line' => 424, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 424, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ChunkCollection::__construct() has parameter $chunks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ChunkCollection::getChunks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ClassExtractor::analyzeFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileAnalysis::__construct() has parameter $fileSizes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Processing\\FileProcessor::$fileSystemService is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileProcessor::getHealthStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Performance\\MemoryMonitor::getCurrentUsage().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileProcessor::processFile() has parameter $visitors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileProcessor::extractVisitors() has parameter $plugins with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileProcessor::collectVisitorResults() has parameter $visitors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 161, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileProcessor::shouldExcludeFile() has parameter $excludePatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\FileStreamProcessor::processDirectories() has parameter $directories with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ProcessingChunk::__construct() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ProcessingChunk::create() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ProcessingChunk::getFiles() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ProcessingResult::__construct() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\ProcessingResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::__construct() has parameter $attributeMappers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::__construct() has parameter $targetInterfaces with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Processing\\VisitorCoordinator::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::processClassAttributes() has parameter $reflection with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::processMethodAttributes() has parameter $reflection with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::processInterfaces() has parameter $reflection with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::add() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::applyMapper() has parameter $attribute with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::applyMapper() has parameter $reflectionElement with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::applyMapper() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::tryDefaultMapper() has parameter $attribute with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::tryDefaultMapper() has parameter $reflectionElement with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::tryDefaultMapper() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::extractAttributeArguments() has parameter $attribute with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Processing\\VisitorCoordinator::extractAttributeArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::validateQuality() has invalid return type App\\Framework\\Discovery\\Quality\\DiscoveryQualityReport.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Discovery\\Quality\\DiscoveryQualityReport not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getQualityRating() on an unknown class App\\Framework\\Discovery\\Quality\\DiscoveryQualityReport.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $numerator of static method App\\Framework\\Core\\ValueObjects\\Score::fromRatio() expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $numerator of static method App\\Framework\\Core\\ValueObjects\\Score::fromRatio() expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::calculateOverallScore() has parameter $scores with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 350, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 350, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::generateRecommendations() has parameter $categoryScores with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 370, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 370, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 370, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 370, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::validateCriteria() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 405, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 405, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::validateCriteria() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 405, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 405, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::checkDiscoveryTime() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 435, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 435, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::checkMemoryUsage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 447, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 447, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::checkCacheHitRate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 462, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 462, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator::checkServiceHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'line' => 474, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 474, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::$circuitBreakers type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::$retryAttempts is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::$retryAttempts type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::executeWithResilience() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext::toArray().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'MEMORY_LIMIT…\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'OPERATION_TIMEOUT\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'RESOURCE_CONFLICT\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'FILESYSTEM_READ…\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'CACHE_OPERATION…\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'RESOURCE_LIMIT…\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'PERMISSION_DENIED\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'DATA_CORRUPTION…\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'DEPENDENCY_MISSING\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'\'|\'API001\'|\'API002\'|\'API003\'|\'API004\'|\'API005\'|\'AUTH001\'|\'AUTH002\'|\'AUTH003\'|\'AUTH004\'|\'AUTH005\'|\'AUTH006\'|\'AUTH007\'|\'BIZ001\'|\'BIZ002\'|\'BIZ003\'|\'BIZ004\'|\'CACHE001\'|\'CACHE002\'|\'CACHE003\'|\'CACHE004\'|\'CON001\'|\'CON002\'|\'CON003\'|\'CON004\'|\'CON005\'|\'CON006\'|\'CON007\'|\'CON008\'|\'DB001\'|\'DB002\'|\'DB003\'|\'DB004\'|\'DB005\'|\'DB006\'|\'DB007\'|\'DI001\'|\'DI002\'|\'DI003\'|\'DI004\'|\'DI005\'|\'DISC001\'|\'DISC002\'|\'DISC003\'|\'DISC004\'|\'DISC005\'|\'ENT001\'|\'ENT002\'|\'ENT003\'|\'ENT004\'|\'ENT005\'|\'ENT006\'|\'EVENT001\'|\'EVENT002\'|\'EVENT003\'|\'EVENT004\'|\'EVENT005\'|\'FS001\'|\'FS002\'|\'FS003\'|\'FS004\'|\'FS005\'|\'HTTP001\'|\'HTTP002\'|\'HTTP003\'|\'HTTP004\'|\'HTTP005\'|\'MCP001\'|\'MCP002\'|\'MCP003\'|\'MCP004\'|\'MCP005\'|\'MCP006\'|\'PERF001\'|\'PERF002\'|\'PERF003\'|\'PERF004\'|\'PERF005\'|\'QUEUE001\'|\'QUEUE002\'|\'QUEUE003\'|\'QUEUE004\'|\'QUEUE005\'|\'QUEUE006\'|\'SEARCH001\'|\'SEARCH002\'|\'SEARCH003\'|\'SEARCH004\'|\'SEARCH005\'|\'SEC001\'|\'SEC002\'|\'SEC003\'|\'SEC004\'|\'SEC005\'|\'SEC006\'|\'SVC001\'|\'SVC002\'|\'SVC003\'|\'SVC004\'|\'SYS001\'|\'SYS002\'|\'SYS003\'|\'SYS004\'|\'SYS005\'|\'SYS006\'|\'TPL001\'|\'TPL002\'|\'TPL003\'|\'TPL004\'|\'TPL005\'|\'VAL001\'|\'VAL002\'|\'VAL003\'|\'VAL004\'|\'VAL005\'|\'VAL006\'|\'VO001\'|\'VO002\'|\'VO003\'|\'VO004\' and \'VAL_CONFIGURATION…\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::handleCircuitBreakerOpen() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 305, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::handleGracefulDegradation() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 326, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 326, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Discovery\\Exceptions\\DiscoveryException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 359, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::tryGetCachedResult() never returns App\\Framework\\Discovery\\Results\\DiscoveryRegistry so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'line' => 437, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 437, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler::$activeOperations type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between App\\Framework\\Core\\ValueObjects\\Duration and int results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot cast App\\Framework\\Core\\ValueObjects\\Duration to int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\Cast\\Int_', 'identifier' => 'cast.int', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'full\'|\'incremental\'|\'partial\'|\'recovery\'|\'selective\' and \'FULL\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'full\'|\'incremental\'|\'partial\'|\'recovery\'|\'selective\' and \'INCREMENTAL\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'full\'|\'incremental\'|\'partial\'|\'recovery\'|\'selective\' and \'TARGETED\' is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $lockId of static method App\\Framework\\Discovery\\Exceptions\\DiscoveryException::concurrentDiscovery() expects string, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler::getActiveOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 235, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler::cleanupOverdueOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 294, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 294, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler::getTimeoutRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 357, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 357, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler::generateTimeoutRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 382, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 382, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 394, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 394, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between \'full\'|\'incremental\'|\'partial\'|\'recovery\'|\'selective\' and \'FULL\' will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'line' => 394, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 394, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\AttributeRegistry::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\AttributeRegistry::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\AttributeRegistry::getAllTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\AttributeRegistry::getMemoryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\DiscoveryRegistry::getMemoryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\DiscoveryRegistry::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\DiscoveryRegistry::__unserialize() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 131, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\DiscoveryRegistry::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::getAllInterfaces() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\InterfaceRegistry::getMemoryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\TemplateRegistry::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Results\\TemplateRegistry::getMemoryStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager::$compressionThreshold is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getMemoryStatus() on App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$memoryPressure.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'line' => 400, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 400, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$memoryPressure.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'line' => 410, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 410, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$memoryPressure.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'line' => 479, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 479, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\DiscoveryStorage::findChangedFiles() has parameter $fileMetadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\DiscoveryStorage::incrementalScan() has parameter $fileMetadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\DiscoveryStorage::incrementalScan() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage::findChangedFiles() has parameter $fileMetadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage::incrementalScan() has parameter $fileMetadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 232, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage::incrementalScan() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 232, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage::findFilesRecursive() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 277, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::createTestContext() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::createTestOptions() has parameter $overrides with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::createTestFileStructure() has parameter $structure with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::createTestFileStructure() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 133, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::validateDiscoveryResults() has parameter $expectations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::validateDiscoveryResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type App\\Framework\\Discovery\\Results\\DiscoveryRegistry supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, class-string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, class-string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, class-string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::benchmarkDiscovery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 198, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function max expects non-empty-array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'list might be empty.', 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::testMemoryBehavior() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 249, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::testMemoryBehavior() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 249, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::testConcurrentDiscovery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 308, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 332, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 334, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 334, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527 contains abstract method clear() from interface App\\Framework\\Cache\\Cache.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 527, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 527, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527 contains abstract method has() from interface App\\Framework\\Cache\\Cache.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 527, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 527, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527 contains abstract method remember() from interface App\\Framework\\Cache\\Cache.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 527, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 527, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::get() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 532, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 532, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::get() has parameter $key with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 532, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 532, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::get() is not variadic but parameter #1 $identifiers of method App\\Framework\\Cache\\Cache::get() is variadic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 532, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 532, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'parameter.notVariadic', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Return type mixed of method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::get() is not covariant with return type App\\Framework\\Cache\\CacheResult of method App\\Framework\\Cache\\Cache::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 532, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 532, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'method.childReturnType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::set() has parameter $key with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 537, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 537, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::set() has parameter $ttl with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 537, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 537, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::set() has parameter $value with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 537, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 537, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::set() is not optional.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 537, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 537, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'parameter.notOptional', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $value of method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::set() is not optional.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 537, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 537, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'parameter.notOptional', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $ttl of method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::set() is not variadic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 537, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 537, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'parameter.notVariadic', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::forget() has parameter $key with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 542, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 542, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527::forget() is not variadic but parameter #1 $identifiers of method App\\Framework\\Cache\\Cache::forget() is variadic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 542, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 542, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'parameter.notVariadic', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Anonymous class implements class App\\Framework\\Core\\PathProvider.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 559, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 559, 'nodeType' => 'PHPStan\\Node\\AnonymousClassNode', 'identifier' => 'classImplements.class', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper::createMockPathProvider() should return App\\Framework\\Core\\PathProvider but returns class@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:559.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 559, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 559, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method createInstance() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method createInstanceWithoutConstructor() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method createLazyGhost() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method createLazyProxy() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method flush() from interface App\\Framework\\Reflection\\Contracts\\CacheManager.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method forget() from interface App\\Framework\\Reflection\\Contracts\\CacheManager.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getAttributeInstances() from interface App\\Framework\\Reflection\\Contracts\\AttributeReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getAttributes() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getConstructorParameters() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getEnumBackingType() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getEnumCase() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getEnumCaseAttributes() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getEnumCaseBackingValue() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getEnumCases() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getMethod() from interface App\\Framework\\Reflection\\Contracts\\MethodReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getMethodAttributeInstances() from interface App\\Framework\\Reflection\\Contracts\\AttributeReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 54 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getMethodAttributes() from interface App\\Framework\\Reflection\\Contracts\\MethodReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 55 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getMethodParameter() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 56 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getMethodParameters() from interface App\\Framework\\Reflection\\Contracts\\MethodReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 57 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getMethods() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 58 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getNativeClass() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 59 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getNativeMethod() from interface App\\Framework\\Reflection\\Contracts\\MethodReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 60 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getParameterAttributes() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 61 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getParameterDefaultValue() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 62 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getParameterInfo() from interface App\\Framework\\Reflection\\Contracts\\MethodReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 63 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getParameterType() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 64 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getProperties() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 65 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getPropertiesWithAttribute() from interface App\\Framework\\Reflection\\Contracts\\PropertyReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 66 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getProperty() from interface App\\Framework\\Reflection\\Contracts\\PropertyReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 67 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getPropertyAttributes() from interface App\\Framework\\Reflection\\Contracts\\PropertyReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 68 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getPropertyDefaultValue() from interface App\\Framework\\Reflection\\Contracts\\PropertyReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 69 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getPropertyType() from interface App\\Framework\\Reflection\\Contracts\\PropertyReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 70 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method getStats() from interface App\\Framework\\Reflection\\Contracts\\CacheManager.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 71 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method hasAttribute() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 72 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method hasConstructor() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 73 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method hasEnumCase() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 74 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method hasMethodAttribute() from interface App\\Framework\\Reflection\\Contracts\\AttributeReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 75 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method hasMethodParameter() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 76 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method hasProperty() from interface App\\Framework\\Reflection\\Contracts\\PropertyReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 77 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method implementsInterface() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 78 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isAbstract() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 79 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isBackedEnum() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 80 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isEnum() from interface App\\Framework\\Reflection\\Contracts\\EnumReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 81 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isFinal() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 82 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isInstantiable() from interface App\\Framework\\Reflection\\Contracts\\ClassReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 83 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isInternal() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 84 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isParameterOptional() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 85 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isParameterVariadic() from interface App\\Framework\\Reflection\\Contracts\\ParameterReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 86 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Non-abstract class App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576 contains abstract method isUserDefined() from interface App\\Framework\\Reflection\\Contracts\\InstantiationReflector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 576, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 576, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'method.abstract', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 87 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576::getClass() return type with generic class ReflectionClass does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 577, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 577, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 88 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $className (string) of method App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576::getClass() is not contravariant with parameter #1 $className (App\\Framework\\Core\\ValueObjects\\ClassName) of method App\\Framework\\Reflection\\Contracts\\ClassReflector::getClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 577, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 577, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'method.childParameterType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 89 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Return type ReflectionClass of method App\\Framework\\Reflection\\ReflectionProvider@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:576::getClass() is not covariant with return type App\\Framework\\Reflection\\WrappedReflectionClass of method App\\Framework\\Reflection\\Contracts\\ClassReflector::getClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 577, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 577, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'method.childReturnType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 90 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 579, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 579, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 91 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function rmdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'line' => 604, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 604, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$processingContext is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$fileScanner is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$fileProcessor is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$visitorCoordinator is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$cacheManager is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$adaptiveChunker is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$memoryManager is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Discovery\\UnifiedDiscoveryService::$memoryGuard is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\Discovery\\Processing\\ProcessingContext. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 741, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 741, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'line' => 765, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 765, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Discovery\\ValueObjects\\AttributeCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\AttributeCollection::getIterator() should return ArrayIterator but returns ArrayIterator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Discovery\\ValueObjects\\CacheLevel::EXTENDED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Discovery\\ValueObjects\\CacheLevel::NORMAL.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Discovery\\ValueObjects\\CacheLevel::COMPRESSED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Discovery\\ValueObjects\\CacheLevel::REDUCED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Discovery\\ValueObjects\\CacheLevel::MINIMAL.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type $this(App\\Framework\\Discovery\\ValueObjects\\CacheLevel).', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.invalidOffset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Discovery\\ValueObjects\\CacheLevel.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.invalidOffset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\CacheMetrics::getRecommendedActions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\CacheMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\CacheTier::orderedByPriority() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\CacheTier::getMemoryEfficientTiers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_object() with object will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "+" between int<1, max> and 0|string results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Plus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 187, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions::__construct() has parameter $excludePatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions::__construct() has parameter $includePatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions::__construct() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions::withPaths() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\FileContext::__construct() has parameter $classNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\ScanStrategy::getPriorityDirectories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanStrategy.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Discovery\\ValueObjects\\TemplateCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\TemplateCollection::getUniqueDirectories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 214, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array is passed by reference so it does not accept readonly property App\\Framework\\Discovery\\ValueObjects\\TemplateCollection::$templates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 290, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.byRef', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\TemplateCollection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 296, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\TemplateCollection::toLegacyArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'line' => 304, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 304, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\TemplateCollection::getIterator() return type with generic class ArrayIterator does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 344, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\TemplateMapping::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\ValueObjects\\TemplateMapping::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::__construct() has parameter $attributeMappers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $attributes of method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::processAttributesForTarget() expects array, App\\Framework\\Reflection\\Collections\\AttributeCollection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $attributes of method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::processAttributesForTarget() expects array, App\\Framework\\Reflection\\Collections\\AttributeCollection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::processAttributesForTarget() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::processAttributesForTarget() has parameter $reflectionElement with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::applyMapperOptimized() has parameter $attribute with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::applyMapperOptimized() has parameter $reflectionElement with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::applyMapperOptimized() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::extractAttributeArgumentsOptimized() has parameter $attribute with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::extractAttributeArgumentsOptimized() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Discovery\\Visitors\\AttributeVisitor::getPerformanceStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 272, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Discovery\\Results\\AttributeRegistry::getTotalCount().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 278, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Email\\CssInliner::querySelectorAll() should return array but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $parentNode on Dom\\Element|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 281, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method removeChild() on Dom\\Node|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 281, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Email\\EmailContext::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Email\\EmailContext::__construct() has parameter $utmParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Email\\EmailContext::getData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Email\\EmailContext::withTracking() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Email\\EmailService::$parser is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Email\\EmailService::$cssInliner is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 221, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 221, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 256, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Mail\\Message constructor invoked with 0 parameters, 2-11 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 322, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setFrom().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 326, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 326, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::addTo().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 333, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 333, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setSubject().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 336, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setHtmlBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 341, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 341, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setTextBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 342, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 342, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setHtmlBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 345, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 345, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setTextBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 348, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Mail\\Message::setPriority().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 353, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Encryption\\AesEncryption::getMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Encryption\\BasicEncryption::getMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Encryption\\EncryptionFactory::getAvailableMethods() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\AlertUrgency::getNotificationChannels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\AlertUrgency::getRetryStrategy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertChannel::sendAlert() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertChannel::getLastDeliveryStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::__construct() has parameter $channels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::__construct() has parameter $escalationConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::__construct() has parameter $throttleConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::$escalationConfig is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::$channels is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::$channels is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::$channelsByUrgency is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::$channelsByUrgency is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::sendAlert() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::sendAlert() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'high\'|\'low\'|\'medium\'|\'urgent\' on array{} on left side of ?? does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $channelNames in empty() always exists and is always falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::processRetry() has parameter $retryData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset mixed on array{} in isset() does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 161, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 161, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::testChannels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Empty array passed to foreach.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 224, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 224, 'nodeType' => 'PhpParser\\Node\\Stmt\\Foreach_', 'identifier' => 'foreach.emptyArray', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 251, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 251, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 268, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 268, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Cache\\CacheResult and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "-" between int and App\\Framework\\Cache\\CacheResult results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 277, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Minus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::updateThrottle() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 285, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 285, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 285, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::scheduleRetry() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 298, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::scheduleRetry() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Queue\\Queue::pushDelayed().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 320, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::scheduleEscalation() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 323, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::scheduleEscalation() has parameter $failedChannels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 323, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::scheduleEscalation() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 329, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 329, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 332, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Cache\\CacheResult and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 332, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 336, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\AlertManager::log() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 359, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::$lastDeliveryStatus type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::__construct() has parameter $recipients with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $transport of method App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::__construct() has invalid type App\\Framework\\Mail\\Transport\\TransportInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::$transport has unknown class App\\Framework\\Mail\\Transport\\TransportInterface as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::sendAlert() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $to of class App\\Framework\\Mail\\Message constructor expects App\\Framework\\Mail\\EmailList, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $from of class App\\Framework\\Mail\\Message constructor expects App\\Domain\\Common\\ValueObject\\Email, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $fromName in call to App\\Framework\\Mail\\Message constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $isHtml in call to App\\Framework\\Mail\\Message constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method send() on an unknown class App\\Framework\\Mail\\Transport\\TransportInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::$lastDeliveryStatus is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::$lastDeliveryStatus is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::getLastDeliveryStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $to of class App\\Framework\\Mail\\Message constructor expects App\\Framework\\Mail\\EmailList, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $from of class App\\Framework\\Mail\\Message constructor expects App\\Domain\\Common\\ValueObject\\Email, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $fromName in call to App\\Framework\\Mail\\Message constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $isHtml in call to App\\Framework\\Mail\\Message constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method send() on an unknown class App\\Framework\\Mail\\Transport\\TransportInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel::buildBody() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 187, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\AlertCommand::test() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateInterval is forbidden: Use App\\Framework\\DateTime\\DateTime::createInterval() instead for consistent error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\AlertCommand::stats() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateInterval is forbidden: Use App\\Framework\\DateTime\\DateTime::createInterval() instead for consistent error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\ErrorAggregationStatsCommand::stats() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\ErrorAggregationStatsCommand::cleanup() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\ErrorPatternsCommand::list() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\ErrorPatternsCommand::list() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\ErrorPatternsCommand::acknowledge() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Commands\\ErrorPatternsCommand::resolve() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 154, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Mail\\Transport\\TransportInterface not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'If condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Stmt\\If_', 'identifier' => 'if.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $data of static method App\\Framework\\ErrorAggregation\\ErrorPattern::fromArray() expects array, App\\Framework\\Cache\\CacheResult given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\ErrorAggregation\\ErrorPattern and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Queue\\Queue::push() invoked with 3 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $job of method App\\Framework\\Queue\\Queue::push() expects object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getActivePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getPatternsByService() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getRecentEvents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::processBatch() has parameter $errorEvents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 233, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateInterval is forbidden: Use App\\Framework\\DateTime\\DateTime::createInterval() instead for consistent error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 259, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateInterval is forbidden: Use App\\Framework\\DateTime\\DateTime::createInterval() instead for consistent error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getErrorTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 279, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 279, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getTopPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 290, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::exportData() has parameter $filters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 298, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::getHealthStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 309, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateInterval is forbidden: Use App\\Framework\\DateTime\\DateTime::createInterval() instead for consistent error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 313, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 313, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Cache\\CacheResult and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 322, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorAggregator::logError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 332, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorEvent::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorEvent::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Ulid\\Ulid::generate().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $requestId of class App\\Framework\\ErrorAggregation\\ErrorEvent constructor expects string|null, App\\Framework\\Http\\RequestId|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Exception\\RequestContext::$userId.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $userAgent of class App\\Framework\\ErrorAggregation\\ErrorEvent constructor expects string|null, App\\Framework\\UserAgent\\UserAgent|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorEvent::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Ulid\\Ulid::fromString() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_starts_with expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_starts_with expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 278, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 281, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 285, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorEvent::normalizeErrorMessage() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 287, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorPattern::__construct() has parameter $affectedIps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorPattern::__construct() has parameter $affectedUsers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorPattern::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Ulid\\Ulid::generate().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorPattern::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\ErrorPattern::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 275, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Ulid\\Ulid::fromString() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 278, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 287, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 288, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'line' => 294, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 294, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::storeEventsBatch() has parameter $events with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Ulid\\Ulid::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $result in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $result in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getActivePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getPatternsByService() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 188, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getRecentEvents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getErrorTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 248, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getTopPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 290, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::exportEvents() has parameter $filters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 334, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 334, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::getHealthStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 377, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 377, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 384, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 385, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::hydratePattern() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 401, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 401, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Ulid\\Ulid::fromString() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 404, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 404, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 413, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 413, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 414, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 414, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 420, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 420, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage::hydrateEvent() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 426, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 426, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static method App\\Framework\\Ulid\\Ulid::fromString() invoked with 1 parameter, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 429, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 429, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'line' => 436, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 436, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::storeEventsBatch() has parameter $events with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getActivePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getPatternsByService() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getRecentEvents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getErrorTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getTopPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::exportEvents() has parameter $filters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorAggregation\\Storage\\ErrorStorageInterface::getHealthStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of method App\\Framework\\Exception\\FrameworkException::__construct() expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of method App\\Framework\\Exception\\FrameworkException::__construct() expects int, Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException::getErrorDetails() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult::__construct() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult::__construct() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult::getSuccessfulResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult::getErrors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of method App\\Framework\\Exception\\FrameworkException::__construct() expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of method App\\Framework\\Exception\\FrameworkException::__construct() expects int, Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return contains generic type App\\Framework\\Async\\AsyncPromise but class App\\Framework\\Async\\AsyncPromise is not generic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'generics.notGeneric', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundary::executeConcurrent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return contains generic type App\\Framework\\Async\\AsyncPromise but class App\\Framework\\Async\\AsyncPromise is not generic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'generics.notGeneric', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return contains generic type App\\Framework\\Async\\AsyncPromise but class App\\Framework\\Async\\AsyncPromise is not generic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'generics.notGeneric', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return contains generic type App\\Framework\\Async\\AsyncPromise but class App\\Framework\\Async\\AsyncPromise is not generic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'generics.notGeneric', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return contains generic type App\\Framework\\Async\\AsyncPromise but class App\\Framework\\Async\\AsyncPromise is not generic.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'generics.notGeneric', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid type Throwable|null to throw.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 255, 'nodeType' => 'PhpParser\\Node\\Expr\\Throw_', 'identifier' => 'throw.notThrowable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundary::log() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 360, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 360, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundary::publishEvent() has parameter $event with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 376, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Template type U of method App\\Framework\\ErrorBoundaries\\BoundaryResult::failure() is not referenced in a parameter.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'method.templateTypeNotInParameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BoundaryResult::onSuccess() return type with generic class App\\Framework\\ErrorBoundaries\\BoundaryResult does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BoundaryResult::onFailure() return type with generic class App\\Framework\\ErrorBoundaries\\BoundaryResult does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BoundaryResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 197, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::getResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::getSuccessfulKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 179, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::getFailedKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 187, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::filterResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 197, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 223, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 241, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::empty() return type with generic class App\\Framework\\ErrorBoundaries\\BulkResult does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 253, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::create() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::create() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\BulkResult::create() return type with generic class App\\Framework\\ErrorBoundaries\\BulkResult does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\ErrorBoundaries\\BoundaryConfig::$successThreshold.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerManager::getAllCircuitStates() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerManager::getCircuitHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerManager::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerManager::log() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 187, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::stats() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::reset() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between \'fallback_executed\' and \'fallback_executed\' will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::testBasicFunctionality() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::testRetryStrategies() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::testCircuitBreaker() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::testBulkOperations() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::testTimeout() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand::getCircuitBreakerStates() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 251, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 251, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $json of function json_decode expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 275, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundary::executeParallel() return type with generic class App\\Framework\\ErrorBoundaries\\BoundaryResult does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid type Throwable|null to throw.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'line' => 315, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 315, 'nodeType' => 'PhpParser\\Node\\Expr\\Throw_', 'identifier' => 'throw.notThrowable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundary::getCircuitHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'line' => 393, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 393, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundary::log() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'line' => 422, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 422, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorBoundaries\\ErrorBoundaryFactory::$routeConfigs type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundaryFactory::__construct() has parameter $routeConfigs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundaryFactory::getDefaultRouteConfigs() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundaryInitializer::loadRouteConfigs() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\ErrorBoundaryInitializer::createConfigFromArray() has parameter $settings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerRecovered::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerRecovered::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerTripped::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerTripped::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorBoundaries\\Events\\BoundaryEventInterface::$context type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryEventInterface::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryEventPublisher::publishBatch() has parameter $events with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionFailed::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionFailed::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionSucceeded::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionSucceeded::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryFallbackExecuted::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryFallbackExecuted::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryTimeoutOccurred::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Events\\BoundaryTimeoutOccurred::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::diff().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isLessThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isLessThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isLessThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 280, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 280, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 290, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 292, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 293, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorBoundaries\\Middleware\\ApiErrorBoundaryMiddleware::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Callable App\\Framework\\Http\\Next invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ApiErrorBoundaryMiddleware::createApiErrorResponse() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Responses\\JsonResponse::withHeader().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ApiErrorBoundaryMiddleware::extractEndpoint() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::__construct() has parameter $monitoredBoundaries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Callable App\\Framework\\Http\\Next invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::isHealthCheckRequest() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'critical\' and \'critical\' is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::getMonitoredBoundaries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::calculateHealthScore() has parameter $healthData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between int<1, max> and 0 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::generateRecommendations() has parameter $healthData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::getRecommendationForBoundary() has parameter $health with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 182, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware::getRecommendationForBoundary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 182, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Callable App\\Framework\\Http\\Next invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::createFallbackResponse() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::createFallbackResponse() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::createJsonFallbackResponse() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::createHtmlFallbackResponse() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::createHtmlFallbackResponse() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metaData of class App\\Framework\\Router\\Result\\ViewResult constructor expects App\\Framework\\Meta\\MetaData, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $data of class App\\Framework\\Router\\Result\\ViewResult constructor expects array, App\\Framework\\Http\\Status::SERVICE_UNAVAILABLE given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::getFallbackHtmlContent() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::extractRouteName() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareContext::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware::acceptsJson() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::register().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::register().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::register().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Http\\MiddlewarePriority::HIGH.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry::registerCustom() has parameter $constructorArgs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::register().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry::shouldApplyMainMiddleware() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry::shouldApplyApiMiddleware() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry::shouldApplyHealthMiddleware() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry::getMonitoredBoundaries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::unregister().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::unregister().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::unregister().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::isRegistered().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::isRegistered().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\MiddlewareManager::isRegistered().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration::__construct() has parameter $apiPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration::__construct() has parameter $enabledRoutes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration::__construct() has parameter $excludedRoutes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration::__construct() has parameter $healthPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration::__construct() has parameter $routeConfigurations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration::getDefaultRouteConfigurations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Container::bindInstance().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Container::getOptional().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Container::getOptional().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\DI\\Container::getOptional().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareServiceProvider::getDefaultMonitoredBoundaries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\ErrorContext::__construct() has parameter $additionalData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorHandling\\ErrorHandler::$requestIdGenerator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $callback of function set_error_handler expects (callable(int, string, string, int): bool)|null, Closure(int, string, string, int): void given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $location of class App\\Framework\\Http\\Responses\\RedirectResponse constructor expects App\\Framework\\Http\\Uri, App\\Framework\\Http\\Uri|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getUri().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Router\\Exception\\MethodNotAllowed not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\ExceptionConverter::getResponseBody() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Router\\Exception\\MethodNotAllowed not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityAlertManager::__construct() has parameter $alertChannels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityAlertManager::createAlertPayload() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityAlertManager::createWithChannels() has parameter $channels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Logging\\Logger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityEventLogger::createOWASPLog() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityEventLogger::createAlertData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\SecurityEventLogger::logToErrorLog() has parameter $owaspLog with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\ErrorHandling\\StackTrace implements generic interface ArrayAccess but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\ErrorHandling\\StackTrace implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\StackTrace::processTrace() has parameter $trace with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\StackTrace::getFirst() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\StackTrace::getLast() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\StackTrace::filter() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/TraceItem.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\TraceItem::__construct() has parameter $args with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/TraceItem.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/TraceItem.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\View\\ApiErrorRenderer::renderFromHandlerContext() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorHandling\\View\\ApiErrorRenderer::render() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $value of static method App\\Framework\\Http\\Status::from() expects int|string, App\\Framework\\Http\\Status given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Exception\\SystemContext::$data.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\Http\\RequestId. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 266, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 266, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\Http\\RequestId. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 393, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 393, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 400, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 400, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function htmlspecialchars expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'line' => 401, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 401, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::identifyPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::generatePredictiveInsights() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateImpactMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::generateHealthReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateStandardDeviation() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findRouteCorrelations() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 199, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 199, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findRouteCorrelations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 199, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 199, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findTimePatterns() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findTimePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findUserPatterns() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findUserPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findCascadePatterns() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::findCascadePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::predictTrend() has parameter $trends with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 313, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 313, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::predictTrend() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 313, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 313, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::detectSeasonalPatterns() has parameter $trends with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 352, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 352, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::detectSeasonalPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 352, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 352, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 357, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 357, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::assessRisk() has parameter $trends with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::assessRisk() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::generateRecommendations() has parameter $prediction with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 391, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::generateRecommendations() has parameter $risk with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 391, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::generateRecommendations() has parameter $seasonal with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 391, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 391, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateUserImpact() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 414, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 414, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateUserImpact() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 414, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 414, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateBusinessImpact() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 426, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 426, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateBusinessImpact() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 426, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 426, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateSystemImpact() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 438, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 438, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateSystemImpact() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 438, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 438, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateAvailabilityImpact() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 450, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 450, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateAvailabilityImpact() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 450, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 450, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::identifyBusinessCriticalRoutes() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 459, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 459, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::identifyBusinessCriticalRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 459, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 459, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::identifyTimePatterns() has parameter $daily with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 473, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 473, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::identifyTimePatterns() has parameter $hourly with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 473, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 473, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::identifyTimePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 473, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 473, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and float results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 486, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 486, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateOverallHealthScore() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 493, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 493, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine::calculateOverallHealthScore() should return int but returns float|int<0, 100>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'line' => 516, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 516, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Score::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand::stats() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'type\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'count\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'period\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'z_score\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'direction\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'direction\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'velocity_percent\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'direction\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'count\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'period\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'velocity_percent\' on App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand::analytics() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 232, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand::health() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 306, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand::search() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 341, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 341, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 353, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand::cleanup() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 361, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 361, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 376, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Console\\ExitCode::FAILURE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 384, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand::show() should return int but returns App\\Framework\\Console\\ExitCode::SUCCESS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'line' => 446, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 446, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::__construct() has parameter $breadcrumbs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::__construct() has parameter $customData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::__construct() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::__construct() has parameter $serverInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::fromThrowable() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::create() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->class" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::withRequest() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::withTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 203, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::withBreadcrumbs() has parameter $breadcrumbs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::withCustomData() has parameter $customData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 341, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 341, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'function\' on array{function: string, line?: int, file?: string, class?: class-string, type?: \'->\'|\'::\', args?: array, object?: object} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 388, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 388, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReport::getServerInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 397, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 397, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'line' => 403, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 403, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::__construct() has parameter $exceptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::__construct() has parameter $levels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::__construct() has parameter $methods with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::__construct() has parameter $routes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::withLevels() has parameter $levels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportCriteria::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 229, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::__construct() has parameter $filters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::__construct() has parameter $processors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\ErrorReporting\\ErrorReporter::$clock is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::reportThrowable() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::reportError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::reportBatch() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::reportBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::withRequestContext() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::getRecentReports() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::findReports() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method push() on App\\Framework\\Queue\\Queue|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 261, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::logDebug() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 264, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 264, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::logInfo() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 269, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReporter::logError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 274, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportingMiddleware::buildRequestContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $string of function explode expects string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportingMiddleware::extractIpFromHeader() should return string|null but returns array|string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportingMiddleware::extractRequestData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 140, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, array|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 164, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportingMiddleware::sanitizeArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 207, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportingMiddleware::sanitizeArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 207, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorReportingMiddleware::sanitizeString() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 242, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $environmentBreakdown with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $errorsByDay with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $errorsByException with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $errorsByHour with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $errorsByLevel with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $errorsByRoute with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $errorsByUser with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $responseTimeImpact with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $topErrors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::__construct() has parameter $trendingErrors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::getMostProblematicRoute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array is passed by reference so it does not accept readonly property App\\Framework\\ErrorReporting\\ErrorStatistics::$errorsByRoute.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.byRef', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::getMostFrequentException() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array is passed by reference so it does not accept readonly property App\\Framework\\ErrorReporting\\ErrorStatistics::$errorsByException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.byRef', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::getPeakErrorHour() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array is passed by reference so it does not accept readonly property App\\Framework\\ErrorReporting\\ErrorStatistics::$errorsByHour.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.byRef', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::getInsights() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 202, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\ErrorStatistics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of || is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\BooleanOrNode', 'identifier' => 'booleanOr.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Processors\\RequestContextProcessor::getRequestData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function rtrim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of || is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\BooleanOrNode', 'identifier' => 'booleanOr.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $userId of method App\\Framework\\ErrorReporting\\ErrorReport::withUser() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $tags in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method has() on App\\Framework\\Http\\Session\\Session|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method get() on App\\Framework\\Http\\Session\\Session|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Processors\\UserContextProcessor::getSessionId() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Processors\\UserContextProcessor::getSessionId() never returns string so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getId() on App\\Framework\\Http\\Session\\Session|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Processors\\UserContextProcessor::getSessionId() should return string|null but returns App\\Framework\\Http\\Session\\SessionId.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Processors\\UserContextProcessor::getUserBreadcrumbs() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method has() on App\\Framework\\Http\\Session\\Session|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method get() on App\\Framework\\Http\\Session\\Session|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Processors\\UserContextProcessor::addBreadcrumb() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 168, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\RequestContextualReporter::__construct() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\RequestContextualReporter::reportThrowable() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\RequestContextualReporter::reportError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::storeBatch() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::transaction().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $result in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::findRecent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::findByCriteria() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::getTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::getTopErrors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::findByFingerprint() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 291, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, App\\Framework\\Database\\ResultInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 302, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::getHealthInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 324, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 324, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 329, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 329, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 339, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 339, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Database\\ResultInterface.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 344, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::buildCriteriaQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 355, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 355, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage::hydrate() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 438, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 438, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'line' => 442, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 442, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::storeBatch() has parameter $reports with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::findRecent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::findByCriteria() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::getTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::getTopErrors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::findByFingerprint() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\Storage\\ErrorReportStorageInterface::getHealthInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\UserContextualReporter::reportThrowable() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $throwable of method App\\Framework\\ErrorReporting\\UserContextualReporter::reportThrowable() has invalid type App\\Framework\\ErrorReporting\\Throwable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $throwable of static method App\\Framework\\ErrorReporting\\ErrorReport::fromThrowable() expects Throwable, App\\Framework\\ErrorReporting\\Throwable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\ErrorReporting\\UserContextualReporter::reportError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $exception of method App\\Framework\\ErrorReporting\\UserContextualReporter::reportError() has invalid type App\\Framework\\ErrorReporting\\Throwable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $exception of static method App\\Framework\\ErrorReporting\\ErrorReport::create() expects Throwable|null, App\\Framework\\ErrorReporting\\Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventBus\\DefaultEventBus::__construct() has parameter $eventHandlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\EventBus\\QueryHandler not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventBus\\EventHandlerCompiler::compile() has parameter $handlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventBus\\EventHandlerCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventBus\\EventHandlerMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Reflection\\Collections\\ParameterCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\AggregateRoot::rehydrate() has parameter $events with no value type specified in iterable type iterable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\Demo\\DemoAggregate::rehydrate() has parameter $events with no value type specified in iterable type iterable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent::getData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function var_dump() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\EventMetadata::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventMetadata.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventRecorder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\EventRecorder::pullRecordedEvents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventRecorder.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventRecorder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventStore.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\EventSourcing\\EventStore::loadStream() return type has no value type specified in iterable type iterable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventStore.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventStore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::AUTH_ACCOUNT_LOCKED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\AccountLockedException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException::__construct() has parameter $requiredRoles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException::__construct() has parameter $userRoles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException::resourceAccess() has parameter $requiredRoles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException::apiEndpoint() has parameter $requiredScopes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException::getMissingRoles() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\InvalidCredentialsException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\SessionTimeoutException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Authentication\\TokenExpiredException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Exception\\ConsoleException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Exception\\ConsoleException constructor expects int, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $previous of class App\\Framework\\Exception\\ConsoleException constructor expects Throwable|null, App\\Framework\\Exception\\ExceptionContext given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Exception\\ConsoleException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Exception\\ConsoleException constructor expects int, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $previous of class App\\Framework\\Exception\\ConsoleException constructor expects Throwable|null, App\\Framework\\Exception\\ExceptionContext given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ConsoleException::invalidArguments() has parameter $arguments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ConsoleException::invalidArguments() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Exception\\ConsoleException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Exception\\ConsoleException constructor expects int, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $previous of class App\\Framework\\Exception\\ConsoleException constructor expects Throwable|null, App\\Framework\\Exception\\ExceptionContext given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\DatabaseException::constraintViolation() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\DatabaseException::transactionFailed() has parameter $operations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryCreateException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $num of function decoct expects int, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryCreateException.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryCreateException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryListException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $num of function decoct expects int, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryListException.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryListException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorCode.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: App\\Framework\\Exception\\ErrorCode::SYS_INITIALIZATION_FAILED', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorCode.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorCode.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::create() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::fromException() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::toFlatArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::forLogging() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 112, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::toSecurityEventFormat() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ErrorHandlerContext::toSecurityEventJson() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::__construct() has parameter $debug with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::getData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::getDebug() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::getMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::withData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::withDebug() has parameter $debug with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::sanitizeData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\ExceptionContext::sanitizeData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unsafe usage of new static().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.static', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::withData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::withDebug() has parameter $debug with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unsafe usage of new static().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.static', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unsafe usage of new static().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static', 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.static', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unsafe usage of new static().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static', 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.static', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unsafe usage of new static().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static', 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.static', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::getData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\InvalidContentTypeException::__construct() has parameter $allowedContentTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\InvalidContentTypeException::fileUpload() has parameter $allowedTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\InvalidContentTypeException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\InvalidContentTypeException::formatContentTypeList() has parameter $contentTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\InvalidContentTypeException::getResponseHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\InvalidContentTypeException::analyzeProvidedContentType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::HTTP_MALFORMED_REQUEST.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\MalformedJsonException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::HTTP_REQUEST_TOO_LARGE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\OversizedRequestException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\OversizedRequestException::getTechnicalDetails() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\RateLimitExceededException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\RateLimitExceededException::getRateLimitHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\RouteNotFoundException::__construct() has parameter $availableRoutes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::HTTP_ROUTE_NOT_FOUND.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\RouteNotFoundException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Http\\RouteNotFoundException::getSimilarRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 154, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\RequestContext::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\RequestContext::create() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\RequestContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\RequestContext::getHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::SECURITY_PATH_TRAVERSAL.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\PathTraversalAttemptException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\PathTraversalAttemptException::analyzePattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Regex pattern is invalid: Compilation failed: PCRE2 does not support \\F, \\L, \\l, \\N{name}, \\U, or \\u at offset 2 in pattern: /\\u[0-9a-f]{4}/i', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'regexp.pattern', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\PathTraversalAttemptException::generateIOC() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 275, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 275, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\PathTraversalAttemptException::getWafRuleSuggestions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 303, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\PathTraversalAttemptException::getSecureAlternatives() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 331, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::SECURITY_SQL_INJECTION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\SqlInjectionAttemptException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\SqlInjectionAttemptException::analyzePattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 177, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 239, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\SqlInjectionAttemptException::generateIOC() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::SECURITY_XSS_ATTEMPT.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\XssAttemptException::getSecurityEventData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\XssAttemptException::analyzePattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 253, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\XssAttemptException::getCspRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 272, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\XssAttemptException::generateIOC() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 302, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 311, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\Security\\XssAttemptException::getWafRuleSuggestions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'line' => 330, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 330, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SecurityEventInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SecurityEventInterface.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SecurityEventInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SystemContext::__construct() has parameter $environment with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\SystemContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\FeatureFlag::withConditions() has parameter $conditions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\FeatureFlagContext::withData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 102, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\FeatureFlagManager::setConditional() has parameter $conditions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\FeatureFlagManager::setForUsers() has parameter $userIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\FeatureFlagManager::getStatusSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Cache\\CacheResult and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Cache\\CacheResult and App\\Framework\\FeatureFlags\\FeatureFlag will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with App\\Framework\\Cache\\CacheResult will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\Storage\\FileFeatureFlagRepository::featureFlagToArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 112, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\FeatureFlags\\Storage\\FileFeatureFlagRepository::arrayToFeatureFlag() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between mixed and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => 'Type null has already been eliminated from mixed.', 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between mixed and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => 'Type null has already been eliminated from mixed.', 'nodeLine' => 133, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AppendableStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\AppendableStorage::appendJson() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AppendableStorage.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AppendableStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\AppendableStorage::appendCsv() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AppendableStorage.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AppendableStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Filesystem\\Directory has PHPDoc tag @property-read for property $contents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Directory::__construct() has parameter $contents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Directory::getTree() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Directory::getContentsOptimized() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Directory::buildTree() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 288, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $microtime of static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromFloat() expects float, App\\Framework\\Core\\ValueObjects\\Timestamp|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, App\\Framework\\Core\\ValueObjects\\Byte|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileMetadata::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileMetadata::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Framework\\Core\\ValueObjects\\Byte::equals() expects App\\Framework\\Core\\ValueObjects\\Byte, App\\Framework\\Core\\ValueObjects\\Byte|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Framework\\Core\\ValueObjects\\Timestamp::equals() expects App\\Framework\\Core\\ValueObjects\\Timestamp, App\\Framework\\Core\\ValueObjects\\Timestamp|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $string of function explode expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 373, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $path of method App\\Framework\\Filesystem\\FilePath::isAbsolutePath() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 375, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Filesystem\\FileScanner::$memoryMonitor is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Filesystem\\FileScanner::$fileSystemService is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\DateTime\\SystemTimer does not have a constructor and must be instantiated without any parameters.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.noConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array (list) of array_values is already a list, call has no effect.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'line' => 268, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 268, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'arrayValues.list', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php', 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileStorage::appendJson() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $line of method App\\Framework\\Filesystem\\FileStorage::appendLine() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php', 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileStorage::appendCsv() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php', 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $content of method App\\Framework\\Filesystem\\FileStorage::putAtomic() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AtomicStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AtomicStorageTrait.php', 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $content of method App\\Framework\\Filesystem\\FileStorage::put() expects string, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php', 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between \'bz2\' and \'bz2\' is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php', 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileStorage::getCompressed() should return string but returns int|string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php', 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'dirname\' might not exist on array{dirname?: string, basename: string, extension?: string, filename: string}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php (in context of class App\\Framework\\Filesystem\\FileStorage)', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php', 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileSystemService::streamFileLines() has invalid return type App\\Framework\\Filesystem\\Generator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return with type App\\Framework\\Filesystem\\Generator is not subtype of native type Generator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'return.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FileSystemService::streamFileChunks() has invalid return type App\\Framework\\Filesystem\\Generator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return with type App\\Framework\\Filesystem\\Generator is not subtype of native type Generator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'return.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function fread expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FilesystemConfig::__construct() has parameter $serializers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FilesystemConfig::getStorageConfig() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\FilesystemConfig::getDefaultStorageConfig() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $path of class App\\Framework\\Filesystem\\File constructor expects App\\Framework\\Filesystem\\FilePath, App\\Framework\\Filesystem\\FilePath|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $metadata of class App\\Framework\\Filesystem\\File constructor expects App\\Framework\\Filesystem\\FileMetadata, App\\Framework\\Filesystem\\Storage given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $metadata (App\\Framework\\Filesystem\\FileMetadata) in call to App\\Framework\\Filesystem\\File constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $path of class App\\Framework\\Filesystem\\File constructor expects App\\Framework\\Filesystem\\FilePath, App\\Framework\\Filesystem\\FilePath|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $storage in call to App\\Framework\\Filesystem\\File constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $contents in call to App\\Framework\\Filesystem\\File constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $size in call to App\\Framework\\Filesystem\\File constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $lastModified in call to App\\Framework\\Filesystem\\File constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $factory of method ReflectionClass::newLazyProxy() expects callable(App\\Framework\\Filesystem\\File): App\\Framework\\Filesystem\\File, array{contents: Closure(App\\Framework\\Filesystem\\File): mixed, size: Closure(App\\Framework\\Filesystem\\File): mixed, lastModified: Closure(App\\Framework\\Filesystem\\File): mixed} given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\File::exists().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$storage.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\File::exists().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$storage.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\File::exists().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$storage.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\Container::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $storage of method App\\Framework\\Filesystem\\FilesystemManager::registerStorage() expects App\\Framework\\Filesystem\\Storage, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Filesystem\\FilesystemManager constructor invoked with 2 parameters, 0-1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 256, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\DateTime\\SystemTimer does not have a constructor and must be instantiated without any parameters.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.noConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method debug() on App\\Framework\\Logging\\DefaultLogger|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\PermissionChecker::getDiagnosticInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $user_id of function posix_getpwuid expects int, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $group_id of function posix_getgrgid expects int, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fputcsv expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fputcsv expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fputcsv expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function rewind expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function stream_get_contents expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fclose expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function str_getcsv expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $keys of function array_combine expects array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $depth of function json_encode expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $depth of function json_decode expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Serializers\\PhpSerializer::__construct() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\Serializers\\PhpSerializer::safe() has parameter $allowedClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\StorageFactory::create() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\StorageFactory::create() should return App\\Framework\\Filesystem\\Storage but returns App\\Framework\\Filesystem\\FileStorage|App\\Framework\\Filesystem\\MemoryStorage.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Filesystem\\MemoryStorage not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Filesystem\\File and App\\Framework\\Filesystem\\File will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\File::getBasename().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$lastModified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::getValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$lastModified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::getValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$lastModified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Filesystem\\File::$lastModified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\File::getBasename().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Filesystem\\File::getBasename().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\ValueObjects\\FileCollection::getTotalSize() should return int but returns float|int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\ValueObjects\\FilePattern::forExtensions() has parameter $extensions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\ValueObjects\\FilePattern::getExtensions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMetrics.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::execute() has parameter $variables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $value on App\\Framework\\Exception\\ErrorCode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::executeQuery() has parameter $variables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::executeQuery() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::executeMutation() has parameter $variables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::executeMutation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::resolveArguments() has parameter $fieldArgs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::resolveArguments() has parameter $variables with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::resolveArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::selectSubFields() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::selectSubFields() has parameter $subFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::selectSubFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::filterFields() has parameter $fields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::filterFields() has parameter $item with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLExecutor::filterFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLField::resolve() has parameter $args with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLQueryParser::extractFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLQueryParser::parseArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLQueryParser::parseSubFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLQueryParser::extractVariables() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLQueryParser::parseVariables() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLResult::__construct() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\GraphQL\\GraphQLResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckManager::getRegisteredChecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckManager::getChecksByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckResult::__construct() has parameter $details with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckResult::healthy() has parameter $details with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckResult::warning() has parameter $details with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthCheckResult::unhealthy() has parameter $details with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthReport::__construct() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthReport::getFailedChecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthReport::getWarningChecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthReport::getHealthyChecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Health\\HealthReport::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Api\\ClientLogRequest::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogRequest.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Batch\\BatchConfig::__construct() has parameter $allowedMethods with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Batch\\BatchOperation::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Batch\\BatchOperation::__construct() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function array_chunk expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to private method handleRequest() of class App\\Framework\\Core\\Application.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Batch\\BatchResponse::error() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchResponse.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookie.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function gmdate() is forbidden: Use Clock::now()->setTimezone() and format() instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookie.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookie.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookies.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Cookies\\Cookies::$cookies (array) does not accept array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookies.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookies.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $environment of method App\\Framework\\Http\\ETagInitializer::__construct() has invalid type App\\Framework\\Environment\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\ETagInitializer::$environment has unknown class App\\Framework\\Environment\\Environment as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getBool() on an unknown class App\\Framework\\Environment\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getBool() on an unknown class App\\Framework\\Environment\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method get() on an unknown class App\\Framework\\Environment\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method get() on an unknown class App\\Framework\\Environment\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getBool() on an unknown class App\\Framework\\Environment\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\ETagManager::generateETag() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function in_array() with arguments \'GET\'|App\\Framework\\Http\\Method, array{\'PUT\', \'PATCH\', \'DELETE\'} and true will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $end on App\\Framework\\Http\\Range|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $start on App\\Framework\\Http\\Range|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $total on App\\Framework\\Http\\Range|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $length on App\\Framework\\Http\\Range|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $range of method App\\Framework\\Http\\Emitter\\StreamEmitter::streamRange() expects App\\Framework\\Http\\Range, App\\Framework\\Http\\Range|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fseek expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function feof expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fread expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function fread expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fclose expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function feof expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fread expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function fread expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fclose expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Http\\WebSocketServer constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Exceptions/MiddlewareTimeoutException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Exception\\ExceptionContext::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exceptions/MiddlewareTimeoutException.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exceptions/MiddlewareTimeoutException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HeaderManipulator::formatForCurl() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::with() has parameter $value with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::all() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::normalizeName() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::parseFromArray() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::parseFromArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::isInternalFormat() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 182, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Http\\HttpMiddlewareChain has an uninitialized readonly property $stateManager. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HttpMiddlewareChain::__construct() has parameter $middlewares with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\HttpMiddlewareChain::$stateManager is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HttpMiddlewareChain::handle() should return App\\Framework\\Http\\Response but returns App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HttpMiddlewareChain::logInfo() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HttpMiddlewareChain::logInfo() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HttpMiddlewareChain::logError() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 227, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\HttpRequest::__construct() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc type array of property App\\Framework\\Http\\HttpRequest::$queryParams is not covariant with PHPDoc type array of overridden property App\\Framework\\Http\\Request::$queryParams.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 'traitFilePath' => NULL, 'tip' => 'You can fix 3rd party PHPDoc types with stub files: https://phpstan.org/user-guide/stub-files', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'property.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Metrics\\MiddlewareMetrics::__construct() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Metrics\\MiddlewareMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Metrics\\MiddlewareMetrics::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::keys().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Metrics\\MiddlewareMetricsCollector::getAllMetricsAsArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Http\\MiddlewarePriority::LATE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middleware\\ETagMiddleware::__construct() has parameter $excludeContentTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middleware\\ETagMiddleware::__construct() has parameter $excludePaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Middleware\\ETagMiddleware::$excludeContentTypes is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$method (App\\Framework\\Http\\Method) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function in_array() with arguments App\\Framework\\Http\\Method, array{\'GET\', \'HEAD\'} and true will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$method (App\\Framework\\Http\\Method) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function in_array() with arguments App\\Framework\\Http\\Method, array{\'PUT\', \'PATCH\', \'DELETE\'} and true will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with array|null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $ifMatch in empty() is never defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middleware\\ETagMiddleware::processETagResponse() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Http\\Headers::empty().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with array|null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $headerValue in empty() is never defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middleware\\ETagMiddleware::isContentTypeExcluded() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with array|null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 185, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 185, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middleware\\ETagMiddleware::create() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\MiddlewareCircuitBreaker::getMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\MiddlewareCircuitBreaker::getMetrics() should return array but returns App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\MiddlewareInvoker::__construct() has parameter $middlewareTimeouts with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\Container::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_object() with object will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Trying to invoke object but it might not be a callable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'callable.nonCallable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $class of function is_a expects string, class-string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $startTime might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $middlewareClasses of method App\\Framework\\Http\\MiddlewareDependencyResolver::getDependencyInfo() expects array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\Cache::remember() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $ttl of method App\\Framework\\Cache\\Cache::remember() expects App\\Framework\\Core\\ValueObjects\\Duration|null, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 276, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\MiddlewareManager::sortMiddlewaresByPriority() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $key of method App\\Framework\\Cache\\Cache::remember() expects App\\Framework\\Cache\\CacheKey, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 319, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $ttl of method App\\Framework\\Cache\\Cache::remember() expects App\\Framework\\Core\\ValueObjects\\Duration|null, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 319, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 348, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::forget() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 349, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriority.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: App\\Framework\\Http\\MiddlewarePriority::FIRST', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriority.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriority.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Http\\MiddlewarePriority::HIGH.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Http\\StateKey::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $headers on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\ResponseManipulator::withHeaders() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\CsrfMiddleware::rotateTokenIfNeeded() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\CsrfMiddleware::rotateTokenIfNeeded() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Http\\Middlewares\\CsrfMiddleware::$session.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $request of method App\\Framework\\DDoS\\DDoSProtectionEngine::analyzeRequest() expects App\\Framework\\Http\\HttpRequest, App\\Framework\\Http\\Request given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $request of method App\\Framework\\DDoS\\DDoSProtectionEngine::executeResponse() expects App\\Framework\\Http\\HttpRequest, App\\Framework\\Http\\Request given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $duration of method App\\Framework\\DateTime\\Timer::sleep() expects App\\Framework\\Core\\ValueObjects\\Duration, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $status of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Status, App\\Framework\\Http\\Status|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $headers of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Headers, App\\Framework\\Http\\Headers|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $status of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Status, App\\Framework\\Http\\Status|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $headers of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Headers, App\\Framework\\Http\\Headers|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Headers::merge().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $headers on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $status on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $body on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\DDoSProtectionMiddleware::logThreatDetection() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 188, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment::$attackType.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment::$geographicData.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Middlewares\\ExceptionHandlingMiddleware::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between non-falsy-string and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $body on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\ResponseManipulator::withBody() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $body of method App\\Framework\\Http\\ResponseManipulator::withBody() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\ResponseManipulator::withBody() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::processJsonWithHtml() has parameter $jsonData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::processJsonWithHtml() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::replaceTokenForFormId() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 292, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 293, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::cleanupOldInputPlaceholders() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 295, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 302, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::cleanupErrorPlaceholders() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 304, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 304, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::removeErrorDisplay() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 311, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 322, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware::addErrorClassToField() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'line' => 324, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 324, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $status on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $status on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\Middlewares\\RateLimitMiddleware::addRateLimitHeaders() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\RateLimitMiddleware::getClientIp() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $identifier of class App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent constructor expects string, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $limit of class App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent constructor expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $currentUsage of class App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent constructor expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\ErrorHandling\\SecurityEventLogger::log().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $headers on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\ResponseManipulator::withHeaders() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\ResponseManipulator::withHeaders() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $headers of method App\\Framework\\Http\\ResponseManipulator::withHeaders() expects App\\Framework\\Http\\Headers, App\\Framework\\Http\\Headers|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $status on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\RoutingMiddleware::__construct() has parameter $namespaceConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'If condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Stmt\\If_', 'identifier' => 'if.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\RoutingMiddleware::createPolicyFromConfig() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\RoutingMiddleware::getIpAuthAttribute() has parameter $route with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\RoutingMiddleware::withNamespaceConfig() has parameter $namespaceConfig with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 296, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $headers on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\ResponseManipulator::withHeaders() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\SecurityHeaderMiddleware::getSecurityHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\SecurityHeaderMiddleware::shouldAddHeader() has parameter $currentHeaders with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\LayerResult::getStatus().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\RequestId::value().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $status of class App\\Framework\\Http\\Responses\\JsonResponse constructor expects App\\Framework\\Http\\Status, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $status of class App\\Framework\\Http\\Responses\\JsonResponse constructor expects App\\Framework\\Http\\Status, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $headers on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $body on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 214, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $status of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Status, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $statusCode on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $body of class App\\Framework\\Http\\HttpResponse constructor expects string, App\\Framework\\Http\\Headers given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Middlewares\\WafMiddleware::formatDetections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 235, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeType.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\MimeType::getExtensions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeType.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 112, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\CookieParser::parseSetCookieHeader() should return array{name: string, value: string, expires?: string, max-age?: int, domain?: string, path?: string, secure?: bool, httponly?: bool, ...} but returns array{name: string, value: string, samesite?: string|null, httponly?: true, secure?: true, path?: string|null, domain?: string|null, max-age?: int, ...}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'traitFilePath' => NULL, 'tip' => '• Offset \'expires\' (string) does not accept type string|null. • Offset \'domain\' (string) does not accept type string|null. • Offset \'path\' (string) does not accept type string|null. • Offset \'samesite\' (string) does not accept type string|null.', 'nodeLine' => 227, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\CookieParser::parseSetCookieHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 237, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Dead catch - InvalidArgumentException is never thrown in the try block.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\CatchWithUnthrownExceptionNode', 'identifier' => 'catch.neverThrown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\FileUploadParser::decodeExtendedFilename() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'line' => 392, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 392, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\FileUploadParser::detectMimeType() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'line' => 459, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 459, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on non-empty-list on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'line' => 505, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 505, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on non-empty-list on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'line' => 506, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 506, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Http\\Parser\\QueryStringParser constructor invoked with 0 parameters, 2 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\FormDataParser::assignNestedValue() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\FormDataParser::assignNestedValue() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between array and false will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 239, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\HeaderParser::parseContentType() should return array{type: string, charset?: string, boundary?: string} but returns non-empty-array<\'boundary\'|\'charset\'|\'type\', string>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 288, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Parser\\FileUploadParser::parseFromFilesSuperglobal().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $contentType of method App\\Framework\\Http\\Parser\\HttpRequestParser::extractBoundary() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $contentType of method App\\Framework\\Http\\Parser\\FormDataParser::parse() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $contentType of method App\\Framework\\Http\\Parser\\FormDataParser::parse() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fwrite expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 375, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function rewind expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 376, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of method App\\Framework\\Http\\Parser\\StreamingParser::streamMultipart() expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 383, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $stream of function fclose expects resource, resource|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'line' => 434, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 434, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $callback of function array_any expects callable(\'/auth/i\'|\'/key/i\'|\'/password/i\'|\'/secret/i\'|\'/session/i\'|\'/token/i\', 0|1|2|3|4|5): bool, Closure(mixed): (0|1|false) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 295, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\ParserConfig::__construct() has parameter $allowedFileExtensions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\ParserConfig::__construct() has parameter $blockedFileExtensions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Byte::isLessThanOrEqual().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Byte::isLessThanOrEqual().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Byte::isLessThanOrEqual().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Byte::isLessThanOrEqual().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\QueryStringParser::assignArrayValue() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Parser\\QueryStringParser::assignArrayValue() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Constant App\\Framework\\Http\\Parser\\StreamingParser::DOUBLE_CRLF is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-used-class-constants', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassConstantsNode', 'identifier' => 'classConstant.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $length of function fread expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Query::__construct() has parameter $query with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Query::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\RequestBody::$data (array) does not accept array|string>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\RequestId::$id is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\RequestId::$id is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\RequestId::$signature is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\RequestId::$signature is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\RequestId::$combined is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\RequestId::$combined is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\RequestManipulator::withAddedHeaders() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Responses\\JsonResponse::__construct() has parameter $body with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Responses\\JsonResponse::$body (string) does not accept string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Responses\\SseResponse::$initialEvents type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Http\\Responses\\WebSocketResponse has an uninitialized readonly property $body. Assign it in the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.uninitializedReadonly', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\ServerEnvironment::__construct() has parameter $serverData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpNetworkService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Services\\IpNetworkService::getLocationContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpNetworkService.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpNetworkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Services\\IpSecurityService::__construct() has parameter $blockedNetworks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Services\\IpSecurityService::__construct() has parameter $trustedNetworks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\CsrfProtection::cleanupOldTokens() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 159, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\CsrfProtection::cleanupOldTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 159, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionClearedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\Events\\SessionClearedEvent::__construct() has parameter $oldData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionClearedEvent.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionClearedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionInvalidatedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\Events\\SessionInvalidatedEvent::__construct() has parameter $securityData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionInvalidatedEvent.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionInvalidatedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FlashBag::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FlashBag::all() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FlashBag::getSuccess() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FlashBag::getError() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FlashBag::getWarning() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FlashBag::getInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FormDataStorage::store() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FormDataStorage::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FormDataStorage::getField() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\FormDataStorage::getField() has parameter $default with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\Http\\RequestBody. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Session\\InMemorySessionStorage::$sessions type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\InMemorySessionStorage::read() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\InMemorySessionStorage::write() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\RedisSessionStorage::read() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\RedisSessionStorage::write() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionCookieConfig::fromArray() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionCookieConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionDataExample::handleFormSubmission() has parameter $formFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionDataExample::addValidationErrors() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionDataExample::displaySessionInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::setUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::setUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::setUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 154, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::getUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::getUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::getUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::hasUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Session\\Session::removeUserData().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionDataExample::handleComplexOperation() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionDataExample::handleComplexOperation() has parameter $formData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionFingerprint::normalizeUserAgent() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionFingerprint::normalizeUserAgent() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprintConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionFingerprintConfig::toComponentArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprintConfig.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprintConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionInterface::all() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionInterface::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Http\\Session\\Session and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $response of method App\\Framework\\Http\\Session\\SessionManager::saveSession() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\Response|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionSecurityData::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionStorage::read() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\SessionStorage::write() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValidationErrorBag::add() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/CsrfDataCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/CsrfDataCollection.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/CsrfDataCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage::success() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage::error() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage::warning() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage::info() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with array will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection::addSuccess() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection::addError() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection::addWarning() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection::addInfo() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 168, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormDataCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with array will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormDataCollection.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormDataCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\SecurityData::create() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection::withValue() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\SessionData::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Session\\ValueObjects\\ValidationError::create() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with array> will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with array will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function header() is forbidden: Use HttpResponse abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\SseStream::sendJson() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $data of method App\\Framework\\Http\\SseStream::send() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Status.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation "<" between 500|501|502|503|504|505|506|507|508|510|511 and 600 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Status.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Status.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 188, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Smaller', 'identifier' => 'smaller.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Streaming\\AdaptivePlaylist::$representations type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Streaming\\AdaptivePlaylist::$segments type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Streaming\\AdaptivePlaylist::$videoId is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 7, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Streaming\\AdaptivePlaylist::getRepresentations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Streaming\\AdaptivePlaylist::getSegments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 146, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $fileSize of class App\\Framework\\Http\\Responses\\StreamResponse constructor expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Streaming\\AdaptiveStreamingController::getVideoSegments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/MimeTypeDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Array has 2 duplicate keys with value \'ogg\' (\'ogg\', \'ogg\').', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/MimeTypeDetector.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/MimeTypeDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\LiteralArrayNode', 'identifier' => 'array.duplicateKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFile.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\UploadedFile::getMimeType() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFile.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFile.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\UploadedFiles::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array is passed by reference so it does not accept readonly property App\\Framework\\Http\\UploadedFiles::$files.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.byRef', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Uri::getPath() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Uri::getQuery() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/ETag.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\ValueObjects\\ETag::matchesAny() has parameter $etags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/ETag.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/ETag.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 178, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\ValueObjects\\IpPattern::__construct() has parameter $compiledData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $end in PHPDoc tag @var does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.variableNotFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $end in PHPDoc tag @var does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 226, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'varTag.variableNotFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\ValueObjects\\IpPattern::fromArray() has parameter $patterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\ValueObjects\\IpPattern::fromArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $parts in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Versioning\\VersionExtractor::extractVersion() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Http\\Versioning\\VersioningConfig::$supportedVersions is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketConnection::$attributes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketConnection::__construct() has parameter $socket with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketConnection::sendJson() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $message of method App\\Framework\\Http\\WebSocketConnection::send() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketServer::$connections type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketServer::$mainSocket has no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketServer::$router has no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketServer::$routeDispatcher has no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketServer::$httpRouter is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\WebSocketServer::$dispatcher is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::handleNewConnection() has parameter $socket with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::readHttpHeaders() has parameter $socket with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::readHttpHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::createRequestFromHeaders() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 299, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::findConnectionBySocket() has parameter $socket with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 402, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 453, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 453, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 491, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 491, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 493, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 493, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::readMessage() has parameter $socket with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 504, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 504, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 508, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 508, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 512, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 512, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 1 on string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 513, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 513, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 522, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 522, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 1 on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 525, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 525, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $string of function unpack expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 525, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 525, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 528, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 528, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 1 on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 531, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 531, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $string of function unpack expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 531, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 531, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 543, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 543, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 552, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 552, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset int<0, 3> on string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 559, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 559, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset int<0, max> on string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 559, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 559, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset int<0, max> on string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 559, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 559, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of method App\\Framework\\Http\\WebSocketServer::sendPong() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 574, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 574, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::sendPong() has parameter $socket with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 584, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 584, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::getCurrentSocket() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 618, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 618, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\WebSocketServer::getSocketFromConnection() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'line' => 625, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 625, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncAwareHttpClient::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::sendMultiple() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::sendMultiple() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::sendBatch() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::sendBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::aggregate() has parameter $namedRequests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::aggregate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::fanOut() has parameter $urls with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::fanOut() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::race() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::healthCheck() has parameter $urls with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::healthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid type Exception|null to throw.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\Throw_', 'identifier' => 'throw.notThrowable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::collect() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 224, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 224, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::collect() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 224, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 224, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientAdapter::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\HttpClient\\AsyncHttpClientBuilder::$requests type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::get() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::post() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::put() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::delete() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::postJson() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::postJson() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::putJson() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::putJson() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::execute() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::executeAsAggregation() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::executeAsHealthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 182, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::collect() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 203, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientBuilder::addRequest() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::sendMultiple() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::sendMultiple() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::sendBatch() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::sendBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid type Exception|null to throw.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\Throw_', 'identifier' => 'throw.notThrowable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::aggregate() has parameter $namedRequests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::aggregate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::fanOut() has parameter $urls with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::fanOut() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::race() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::healthCheck() has parameter $urls with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 196, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::healthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 196, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 209, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::collect() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::collect() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Undefined variable: $key', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 303, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AsyncHttpClientDecorator::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'line' => 318, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 318, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthConfig::__construct() has parameter $credentials with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthConfig::custom() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthResult::__construct() has parameter $curlOptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthResult.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthenticationHandler::setupBasicAuth() has parameter $credentials with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthenticationHandler::setupBearerAuth() has parameter $credentials with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthenticationHandler::setupOAuth2Auth() has parameter $credentials with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthenticationHandler::setupDigestAuth() has parameter $credentials with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\AuthenticationHandler::setupCustomAuth() has parameter $credentials with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientOptions::__construct() has parameter $allowedStatusCodes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientOptions::__construct() has parameter $curlOptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientOptions::__construct() has parameter $query with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientOptions::with() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientOptions::withQuery() has parameter $query with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientRequest::__construct() has parameter $body with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientRequest::with() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientRequest::json() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientRequest::form() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientRequest::multipart() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientRequest::multipart() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\ClientResponse::json() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 might not exist on array|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\HttpClient\\AuthConfig|null and array{} will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $auth of method App\\Framework\\HttpClient\\AuthenticationHandler::configure() expects App\\Framework\\HttpClient\\AuthConfig, App\\Framework\\HttpClient\\AuthConfig|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function curl_exec() is forbidden: Use HttpClient abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\CurlHttpClient::executeCurlRequest() should return string but returns string|true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\CurlRequestBuilder::buildOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::loadUserDashboard() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::loadProductPage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::checkSystemHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::syncUserData() has parameter $userData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::syncUserData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::searchProducts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::processUsers() has parameter $userIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::processUsers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::collectServerMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::sendNotifications() has parameter $message with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::sendNotifications() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample::runAbTestAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $start might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $start might not be defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::loadDashboardData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::getProductDetails() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::checkSystemHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::sendNotificationToAllChannels() has parameter $message with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::sendNotificationToAllChannels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::searchProducts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::processUserUploads() has parameter $userIds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::processUserUploads() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\HttpClient\\ClientRequest constructor expects array|string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::getExternalData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::collectMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 196, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::getSlowApiData() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::getSlowApiData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample::reliableApiCall() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 241, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @param for parameter $response with type App\\Framework\\HttpClient\\Exception\\ClientResponse is not subtype of native type App\\Framework\\HttpClient\\ClientResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'parameter.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $response of method App\\Framework\\HttpClient\\Exception\\ClientErrorException::__construct() has invalid type App\\Framework\\HttpClient\\Exception\\ClientResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::getStatusCode().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::getContent().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::getHeaders().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlExecutionFailed.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::__construct() invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlExecutionFailed.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlExecutionFailed.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlNotInitialized.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::__construct() invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlNotInitialized.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlNotInitialized.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Constructor of class App\\Framework\\HttpClient\\Exception\\ServerErrorException has an unused parameter $response.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'constructor.unusedParameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @param for parameter $response with type App\\Framework\\HttpClient\\Exception\\ClientResponse is not subtype of native type App\\Framework\\HttpClient\\ClientResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'parameter.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $response of method App\\Framework\\HttpClient\\Exception\\ServerErrorException::__construct() has invalid type App\\Framework\\HttpClient\\Exception\\ClientResponse.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Exception\\FrameworkException::__construct() invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Cache\\CacheResult and App\\Framework\\HttpClient\\ClientResponse will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\HttpClient\\Middleware\\RateLimitingMiddleware::$lastRequestTimes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function min expects non-empty-array, (array|null) given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 'traitFilePath' => NULL, 'tip' => '(array|null) might be empty.', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Middleware\\RetryMiddleware::__construct() has parameter $retryableStatuses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\Middleware\\UnifiedRetryMiddleware::__construct() has parameter $retryableStatuses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\HttpClient\\Middleware\\UnifiedRetryMiddleware::$retryManager is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientRequest::getUri().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientRequest::getMethod().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientRequest::getUri().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\HttpClient\\RequestValidator::validateBody() has parameter $body with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\RequestValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\HttpClient\\Exception\\ResponseValidationException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::isClientError().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\ClientResponse::isServerError().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ksuid\\Ksuid::getDateTime() should return DateTimeImmutable but returns DateTimeImmutable|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 1 on array|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Ksuid\\Ksuid::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Ksuid\\Ksuid::$timestamp is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 219, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Ksuid\\Ksuid::$payload is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Ksuid\\Ksuid::$payload is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ksuid\\KsuidGenerator::generateBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset string on array{} in isset() does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ksuid\\KsuidGenerator::generateSequence() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ksuid\\KsuidGenerator::generateTimeRange() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Commands\\RotateLogsCommand::getLogPaths() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::debug() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::info() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::notice() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::warning() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::error() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::critical() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::alert() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::emergency() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::log() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\DefaultLogger::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Logging\\Handlers\\FileHandler::$fileMode is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Logging\\Handlers\\JsonFileHandler::$includedFields type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Handlers\\JsonFileHandler::__construct() has parameter $includedFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Handlers\\JsonFileHandler::setIncludedFields() has parameter $fields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogConfig.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRecord::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRecord::getContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRecord::withContext() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRecord::addExtras() has parameter $extras with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRecord::getExtras() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRecord::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function gzwrite expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogRotator::getRotationInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 179, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Logging\\LogViewer::$logPaths type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Logging\\LogViewer::$logLevels is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Logging\\LogViewer::$logLevels type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::__construct() has parameter $logPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::getAvailableLogs() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $bytes of static method App\\Framework\\Core\\ValueObjects\\Byte::fromBytes() expects int, int<0, max>|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::readLog() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::tailLog() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::searchLogs() has parameter $logNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::searchLogs() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::getDefaultLogPaths() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::readSmallFileLines() has parameter $file with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 249, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::readLargeFileLines() has parameter $file with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 266, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 266, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::readLogLines() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::readLogLines() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 343, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::parseLogEntries() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 348, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::parseLogEntries() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::parseLogEntries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 348, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::parseLogLine() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 362, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 362, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LogViewer::parseLogLine() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 362, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 362, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'line' => 392, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 392, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::debug() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::info() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::notice() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::warning() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::error() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::critical() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::alert() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Logger::emergency() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\LoggerFactory::create() has parameter $handlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $minLevel of class App\\Framework\\Logging\\DefaultLogger constructor expects App\\Framework\\Logging\\LogLevel, App\\Framework\\Logging\\LogLevel|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $handlers of class App\\Framework\\Logging\\DefaultLogger constructor expects array, bool given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $processorManager of class App\\Framework\\Logging\\DefaultLogger constructor expects App\\Framework\\Logging\\ProcessorManager, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\ProcessorManager::sortProcessors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Processors\\ExceptionProcessor::formatException() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Processors\\ExceptionProcessor::formatTrace() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'function\' on array{function: string, line?: int, file?: string, class?: class-string, type?: \'->\'|\'::\', args?: array, object?: object} in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'type\' might not exist on array{function: string, line?: int, file?: string, class: class-string, type?: \'->\'|\'::\', args?: array, object?: object}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Processors\\InterpolationProcessor::interpolate() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'function\' on array{function: string, line?: int, file?: string, class?: class-string, type?: \'->\'|\'::\', args?: array, object?: object} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Logging\\Processors\\WebInfoProcessor::$config type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Processors\\WebInfoProcessor::__construct() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Logging\\Processors\\WebInfoProcessor::collectWebInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Mail\\Message and App\\Framework\\Mail\\Message will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommand.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommand.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Mail\\EmailList implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'line' => 10, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\EmailList::fromArray() has parameter $emails with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\EmailList::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\EmailList::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\EmailList::toStringArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\EmailList::getIterator() return type with generic class ArrayIterator does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Examples\\MailerUsageExample::sendNewsletter() has parameter $subscribers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Examples\\MailerUsageExample::sendNewsletter() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function app not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Examples\\MailerUsageExample::sendNotificationEmail() has parameter $bccEmails with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Examples\\MailerUsageExample::sendNotificationEmail() has parameter $ccEmails with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$emails of class App\\Framework\\Mail\\EmailList constructor expects App\\Domain\\Common\\ValueObject\\Email|string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Exceptions/SmtpException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Exceptions\\SmtpException::messageValidationFailed() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Exceptions/SmtpException.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Exceptions/SmtpException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mail\\Mailer::$queue is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Mailer::sendBatch() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Mailer::sendBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Mailer::queueBatch() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Mailer::queueBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\MailerInterface::sendBatch() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\MailerInterface::sendBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Message::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mail\\PooledSmtpTransport::$connections type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\PooledSmtpTransport::sendBatch() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\PooledSmtpTransport::sendBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mail\\SmtpTransport::$socket has no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Mail\\SmtpEncryption and \'tls\' will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::buildTextMessage() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::buildHtmlMessage() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 250, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::buildMultipartAlternativeMessage() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::buildMultipartMixedMessage() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 292, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::addAlternativeParts() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 320, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::addAttachments() has parameter $lines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 340, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 340, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\SmtpTransport::sanitizeHeaderName() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 373, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'line' => 378, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 378, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mail\\Testing\\MockTransport::$sentMessages type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Testing\\MockTransport::sendBatch() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Testing\\MockTransport::sendBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Testing\\MockTransport::getSentMessages() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Testing\\MockTransport::getLastSentMessage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Testing\\MockTransport::getSentMessagesTo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\Testing\\MockTransport::getSentMessageWithSubject() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 136, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\TransportResult::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\TransportResult::success() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\TransportResult::failure() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mail\\TransportResult::getMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::parseInlineElements() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::flushParagraph() has parameter $currentParagraph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::flushParagraph() has parameter $html with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::handleList() has parameter $html with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 151, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::handleList() never assigns null to &$listType so it can be removed from the by-ref type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => 'You can narrow the parameter out type with @param-out PHPDoc tag.', 'nodeLine' => 151, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'parameterByRef.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::closeList() has parameter $html with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 164, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownConverter::getListType() has parameter $html with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 172, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownRenderer::render() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownRenderer::renderFile() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $markdown of method App\\Framework\\Markdown\\MarkdownRenderer::render() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownRenderer::wrapWithLayout() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownTheme::__construct() has parameter $colors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownTheme::__construct() has parameter $fonts with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Markdown\\MarkdownTheme::__construct() has parameter $spacing with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Markdown\\MarkdownTheme::$colors is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Markdown\\MarkdownTheme::$fonts is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Markdown\\MarkdownTheme::$spacing is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Dead catch - Throwable is never thrown in the try block.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\CatchWithUnthrownExceptionNode', 'identifier' => 'catch.neverThrown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpResourceMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\McpResourceRegistry::$resources type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpResourceRegistry::__construct() has parameter $resources with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpResourceRegistry::getResource() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpResourceRegistry::getAllResources() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::initialize() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::initialize() has parameter $requestId with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::listTools() has parameter $requestId with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::callTool() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::callTool() has parameter $requestId with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::listResources() has parameter $requestId with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::readResource() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::readResource() has parameter $requestId with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::prepareArguments() has parameter $arguments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::prepareArguments() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::prepareArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 195, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::generateInputSchema() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::generateInputSchema() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpServer::createErrorResponse() has parameter $requestId with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 248, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpTool.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpTool::__construct() has parameter $inputSchema with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpTool.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpTool.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpToolMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpToolMapper::extractParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\McpToolRegistry::$tools type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpToolRegistry::__construct() has parameter $tools with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpToolRegistry::getTool() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\McpToolRegistry::getAllTools() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CacheTools::cacheHealthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Cache\\CacheResult and non-falsy-string will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CacheTools::cacheInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CacheTools::cacheClear() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\CodeQualityTools::$container is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $discoveryService of method App\\Framework\\Mcp\\Tools\\CodeQualityTools::__construct() has invalid type App\\Framework\\Core\\AttributeDiscoveryService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\CodeQualityTools::$discoveryService has unknown class App\\Framework\\Core\\AttributeDiscoveryService as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\CodeQualityTools::$discoveryService is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::analyzeCodeComplexity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCodeSmells() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::analyzeSolidViolations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::analyzeDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 214, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateQualityReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 259, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::analyzeFileComplexity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 331, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 333, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 333, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $method of method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateMethodComplexity() expects ReflectionMethod, App\\Framework\\Reflection\\WrappedReflectionMethod given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 348, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateMethodComplexity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 370, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 370, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 380, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 380, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::extractClassesFromTokens() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 441, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 441, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::extractClassesFromTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 441, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 441, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::extractNamespaceFromTokens() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 462, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 462, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::extractClassNameFromTokens() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 478, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 478, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::analyzeFileForCodeSmells() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 490, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 490, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 492, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 492, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array of function array_filter expects array, App\\Framework\\Reflection\\Collections\\MethodCollection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 522, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 522, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionMethod::getEndLine().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 535, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateSmellRecommendations() has parameter $smellTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateSmellRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 565, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 565, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::analyzeSolidViolationsInFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 589, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 589, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 596, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 596, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array of function array_filter expects array, App\\Framework\\Reflection\\Collections\\MethodCollection given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 610, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 610, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::isBuiltin().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 625, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 625, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 626, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 626, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::isAbstract().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 630, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 630, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::isInterface().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 630, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 630, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateSolidScore() has parameter $violations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 652, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 652, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateSolidRecommendations() has parameter $violations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 665, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 665, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateSolidRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 665, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 665, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::buildDependencyGraph() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 681, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 681, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 693, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 693, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $code of function token_get_all expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 693, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 693, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::extractDependenciesFromFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 702, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 702, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 704, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 704, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::extractUseStatement() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 724, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 724, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependencies() has parameter $graph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 738, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 738, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 738, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 738, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset (int|string) on array{} in isset() does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 745, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 745, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependenciesHelper() has parameter $circular with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 753, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 753, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependenciesHelper() has parameter $graph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 753, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 753, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependenciesHelper() has parameter $path with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 753, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 753, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependenciesHelper() has parameter $recursionStack with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 753, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 753, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::detectCircularDependenciesHelper() has parameter $visited with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 753, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 753, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateDependencyMetrics() has parameter $graph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 778, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 778, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateDependencyMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 778, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 778, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateDependencyDepth() has parameter $graph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 795, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 795, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateDependencyDepth() has parameter $visited with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 795, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 795, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::findHighlyCoupledClasses() has parameter $graph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 812, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 812, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::findHighlyCoupledClasses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 812, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 812, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 54 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateDependencyRecommendations() has parameter $circularDependencies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 828, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 828, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 55 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateDependencyRecommendations() has parameter $graph with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 828, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 828, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 56 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateDependencyRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 828, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 828, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 57 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateOverallQualityScore() has parameter $codeSmells with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 845, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 845, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 58 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateOverallQualityScore() has parameter $complexity with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 845, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 845, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 59 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateOverallQualityScore() has parameter $dependencies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 845, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 845, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 60 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateOverallQualityScore() has parameter $solidViolations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 845, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 845, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 61 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateComplexityScore() has parameter $complexity with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 858, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 858, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 62 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateCodeSmellsScore() has parameter $codeSmells with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 872, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 872, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 63 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::calculateDependencyScore() has parameter $dependencies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 886, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 886, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 64 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateOverallRecommendations() has parameter $codeSmells with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 900, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 900, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 65 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateOverallRecommendations() has parameter $complexity with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 900, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 900, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 66 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateOverallRecommendations() has parameter $dependencies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 900, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 900, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 67 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateOverallRecommendations() has parameter $solidViolations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 900, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 900, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 68 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\CodeQualityTools::generateOverallRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'line' => 900, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 900, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\DatabaseTools::databaseHealthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\DatabaseTools::databaseConfigInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\DatabaseTools::listEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FileSystemTools::listDirectory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $timestamp of function date expects int|null, int|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FileSystemTools::findFiles() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FileSystemTools::getFrameworkConfig() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $needle of function str_starts_with expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 223, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FileSystemTools::getFrameworkModules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 226, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\FrameworkAgents::$container is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $discoveryService of method App\\Framework\\Mcp\\Tools\\FrameworkAgents::__construct() has invalid type App\\Framework\\Core\\AttributeDiscoveryService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\FrameworkAgents::$discoveryService has unknown class App\\Framework\\Core\\AttributeDiscoveryService as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\FrameworkAgents::$discoveryService is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\FrameworkAgents::$compiledRoutes is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\FrameworkAgents::$fileSystemTools is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::frameworkCoreAgent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::mcpSpecialistAgent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::valueObjectAgent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 144, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::discoveryExpertAgent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 202, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::generateFrameworkRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 259, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::generateMcpRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 284, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::generateValueObjectRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 303, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::generateDiscoveryRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 322, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::getFrameworkCodePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 341, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 341, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::getMcpFrameworkPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 359, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::getValueObjectPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 373, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::discoverMcpTools() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 387, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 387, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type list|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 393, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 393, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 394, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 394, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match_all expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 395, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 395, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::scanForValueObjects() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 407, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 407, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Dead catch - Throwable is never thrown in the try block.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 418, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 418, 'nodeType' => 'PHPStan\\Node\\CatchWithUnthrownExceptionNode', 'identifier' => 'catch.neverThrown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::analyzePrimitiveUsage() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 423, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 423, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::analyzeDiscoveryPerformance() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 432, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 432, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkAgents::scanAttributeComponents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 444, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 444, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Dead catch - Throwable is never thrown in the try block.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'line' => 466, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 466, 'nodeType' => 'PHPStan\\Node\\CatchWithUnthrownExceptionNode', 'identifier' => 'catch.neverThrown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $discoveryService of method App\\Framework\\Mcp\\Tools\\FrameworkTools::__construct() has invalid type App\\Framework\\Core\\AttributeDiscoveryService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Mcp\\Tools\\FrameworkTools::$discoveryService has unknown class App\\Framework\\Core\\AttributeDiscoveryService as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkTools::analyzeRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkTools::analyzeContainerBindings() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkTools::discoverAttributes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method discover() on an unknown class App\\Framework\\Core\\AttributeDiscoveryService.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkTools::frameworkHealthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Core\\AttributeDiscoveryService not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\FrameworkTools::listFrameworkModules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\LogTools::logRecentEntries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\LogTools::logErrorSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\LogTools::loggerInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::getPerformanceSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::getSlowestOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::getPerformanceByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Performance\\PerformanceMetric::$category.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Performance\\PerformanceMetric::$key.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'total_duration_ms\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'count\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'avg_duration_ms\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'total_duration_ms\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::analyzeBottlenecks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'total_duration_ms\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'count\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'avg_duration_ms\' on App\\Framework\\Performance\\ValueObjects\\MeasurementCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Performance\\PerformanceMetric::$key.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to private property App\\Framework\\Performance\\PerformanceMetric::$category.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array of function usort contains unresolvable type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.unresolvableType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $callback of function usort contains unresolvable type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.unresolvableType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'critical\'|\'high\'|\'medium\' on array{critical: 4, high: 3, medium: 2, low: 1} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'critical\'|\'high\'|\'medium\' on array{critical: 4, high: 3, medium: 2, low: 1} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::generatePerformanceReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 193, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::resetPerformanceMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 223, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::generateRecommendations() has parameter $metric with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::calculateOverallHealth() has parameter $bottlenecks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::calculateOverallHealth() has parameter $requestStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Mcp\\Tools\\PerformanceTools::calculateOverallHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/Keywords.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Meta\\Keywords::__construct() has parameter $keywords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Meta/Keywords.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Meta/Keywords.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::groupMetricsByBaseName() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::isHistogramGroup() has parameter $group with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::formatHistogram() has parameter $group with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::formatHistogram() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::formatRegularMetric() has parameter $metricGroup with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::formatRegularMetric() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\PrometheusFormatter::determineMetricType() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\StatsDFormatter::formatMetric() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Formatters\\StatsDFormatter::formatTags() has parameter $labels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\Metric::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\MetricsCollection::counter() has parameter $labels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\MetricsCollection::gauge() has parameter $labels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\MetricsCollection::histogram() has parameter $buckets with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\MetricsCollection::histogram() has parameter $labels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Metrics\\MetricsCollection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $database of method App\\Framework\\Metrics\\MetricsCollector::__construct() has invalid type App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Metrics\\MetricsCollector::$database has unknown class App\\Framework\\Database\\Connection as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $performance of method App\\Framework\\Metrics\\MetricsCollector::__construct() has invalid type App\\Framework\\Performance\\PerformanceCollector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Metrics\\MetricsCollector::$performance has unknown class App\\Framework\\Performance\\PerformanceCollector as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $middleware of method App\\Framework\\Metrics\\MetricsCollector::__construct() has invalid type App\\Framework\\Http\\MiddlewareMetricsCollector.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Metrics\\MetricsCollector::$middleware has unknown class App\\Framework\\Http\\MiddlewareMetricsCollector as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::__construct() has parameter $stateManager with generic interface App\\Framework\\StateManagement\\StateManager but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Monitoring\\AdvancedMonitoring::$logger is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getCircuitBreakerDashboard() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getErrorBoundaryDashboard() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: string', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: string', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getCircuitBreakerTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 175, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getPerformanceAnalytics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 261, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::generateAlerts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getCircuitHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 311, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getBoundaryHealth() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 336, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 336, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::calculateHealthStatus() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 361, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 361, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::calculateBoundaryHealthStatus() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 381, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 381, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::aggregateCircuitMetrics() has parameter $existing with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 431, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 431, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::aggregateCircuitMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 431, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 431, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::aggregateBoundaryMetrics() has parameter $existing with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 461, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 461, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::aggregateBoundaryMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 461, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 461, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getActiveCircuits() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 487, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 487, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getActiveBoundaries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 492, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 492, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getAggregatedCircuitMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 497, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 497, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getAggregatedBoundaryMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 502, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 502, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::getMetricsInTimeRange() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 507, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 507, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::analyzeTrends() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 512, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 512, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::analyzeTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 512, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 512, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::analyzeCircuitPerformance() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 517, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 517, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::analyzeCircuitPerformance() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 517, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 517, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::analyzeBoundaryPerformance() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 522, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 522, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\AdvancedMonitoring::analyzeBoundaryPerformance() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'line' => 522, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 522, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\CircuitBreakerMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\CircuitBreakerMetrics::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\ErrorBoundaryMetrics::__construct() has parameter $errorTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\ErrorBoundaryMetrics::getMostCommonErrorType() should return string|null but returns int|string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\ErrorBoundaryMetrics::getErrorTypeDistribution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\ErrorBoundaryMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 165, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\ErrorBoundaryMetrics::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 193, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 203, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\MonitoringAlert::__construct() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\MonitoringAlert::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\MonitoringAlert::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\MonitoringConfig::__construct() has parameter $alertChannels with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\SystemHealthSummary::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\SystemHealthSummary::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Monitoring\\SystemHealthSummary::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\NanoId\\NanoIdGenerator::generateBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 178, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset string on array{} in isset() does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiEndpoint.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\Attributes\\ApiEndpoint::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiEndpoint.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiEndpoint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiParameter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\Attributes\\ApiParameter::__construct() has parameter $enum with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiParameter.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiParameter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiRequestBody.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\Attributes\\ApiRequestBody::__construct() has parameter $example with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiRequestBody.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiRequestBody.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\Attributes\\ApiResponse::__construct() has parameter $example with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\Attributes\\ApiResponse::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiSecurity.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\Attributes\\ApiSecurity::__construct() has parameter $scopes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiSecurity.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiSecurity.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiGenerator::generate() has parameter $servers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiGenerator::generatePathItem() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiGenerator::extractParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiGenerator::extractRequestBody() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiGenerator::extractResponses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 209, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiGenerator::extractSecurity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 257, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiInfo::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiLicense.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiLicense::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiLicense.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiLicense.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiService::getEndpoints() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiService::getEndpointsByTag() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::__construct() has parameter $components with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::__construct() has parameter $paths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::__construct() has parameter $security with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::__construct() has parameter $servers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\OpenApi\\OpenApiSpec::toJson() should return string but returns string|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalysis::__construct() has parameter $bottlenecks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalysis::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalysis::getBottlenecksBySeverity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalysis::getBottlenecksByType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalysis::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::DISCOVERY.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::DATABASE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::CACHE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::FILESYSTEM.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::DISCOVERY.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::DATABASE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::CACHE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::FILESYSTEM.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::DISCOVERY.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::DATABASE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::CACHE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory::FILESYSTEM.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\ArrayItem', 'identifier' => 'array.invalidKey', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 103, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzePattern() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzePattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzeDuration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 156, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzeMemory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzeThroughput() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzeCachePerformance() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 257, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::analyzeErrorRate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 292, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::generateRecommendations() has parameter $bottlenecks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 325, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 325, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::generateRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 325, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 325, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::generatePatternRecommendations() has parameter $topBottlenecks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 402, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::generatePatternRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 402, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::calculatePerformanceScore() has parameter $bottlenecks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 431, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 431, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset \'default\' on 0.05|0.8|non-empty-array<0.1|1.0|2.0|5.0|10.0|32|50.0|64|100.0|128|256|1000.0>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 463, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 463, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Invalid array key type App\\Framework\\Performance\\PerformanceCategory.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 463, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 463, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.invalidOffset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer::calculateTrend() has parameter $scores with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'line' => 479, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 479, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::__construct() has parameter $anomalies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::__construct() has parameter $metricTrends with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::__construct() has parameter $predictions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::__construct() has parameter $recommendations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::__construct() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::insufficient() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getTrendsByDirection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getConcerningPredictions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getAnomaliesBySeverity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getHighSeverityAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getPriorityRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getPrediction() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::getTimePeriod() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 205, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalysis::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 265, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'line' => 358, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 358, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::analyzeTrend() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::analyzeTrendsByCategory() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::analyzeTrendsByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::comparePeriods() has parameter $period1 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::comparePeriods() has parameter $period2 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::comparePeriods() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::extractMetricsTimeSeries() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::extractMetricsTimeSeries() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateTrend() has parameter $timeSeries with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateTrend() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateOverallTrend() has parameter $metricTrends with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 253, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining value: mixed', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::generatePredictions() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::generatePredictions() has parameter $trendResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::generatePredictions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::generateTrendRecommendations() has parameter $trendResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::generateTrendRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::detectAnomalies() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::detectAnomalies() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::detectAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateLinearRegression() has parameter $x with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 387, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 387, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateLinearRegression() has parameter $y with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 387, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 387, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateLinearRegression() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 387, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 387, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateVariance() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 432, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 432, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::predictMetricValue() has parameter $trend with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 452, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 452, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::isPredictionConcerning() has parameter $trend with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 472, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 472, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::generatePredictionAlert() has parameter $trend with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 487, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 487, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::getMetricTrendRecommendation() has parameter $trend with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 502, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 502, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::compareMetricTrends() has parameter $trend1 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 541, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 541, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::compareMetricTrends() has parameter $trend2 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 541, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 541, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateChangeMagnitude() has parameter $trend1 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 569, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 569, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateChangeMagnitude() has parameter $trend2 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 569, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 569, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateConfidence() has parameter $snapshots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 608, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 608, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Analysis\\TrendAnalyzer::calculateConfidence() has parameter $trendResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'line' => 608, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 608, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface::startTiming() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface::measure() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface::recordMetric() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface::increment() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceReporterInterface::generateReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceReporterInterface::getTopMetricsByTime() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceReporterInterface::getTopMetricsByMemory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceReporterInterface::getMetricsByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::measure() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::startTiming() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::recordMetric() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::increment() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::generateReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::getSlowestOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::exportMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::measureDatabaseQuery() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::measureCacheOperation() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Contracts\\PerformanceServiceInterface::measureViewRender() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::startTiming() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Performance\\EnhancedPerformanceCollector::$activeTimers (array) does not accept non-empty-array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'Offset \'parent\' (string) does not accept type string|null.', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Performance\\EnhancedPerformanceCollector::$nestedStructure (array, self_time?: float, total_time?: float}>) does not accept non-empty-array, self_time?: float, total_time?: float}>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'Offset \'parent\' (string) does not accept type string|null.', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Performance\\EnhancedPerformanceCollector::$nestedStructure (array, self_time?: float, total_time?: float}>) does not accept non-empty-array, self_time?: float, total_time?: float}>.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'Offset \'parent\' (string) does not accept type string|null.', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::measure() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::recordMetric() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 158, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::increment() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::getActiveTimers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::benchmark() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::measureDuration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 298, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 298, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::getCallStack() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::getNestedStructure() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 357, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 357, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::getHierarchicalReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 365, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 365, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'parent\' might not exist on array{key: string, parent?: string, depth: int, children: array, self_time?: float, total_time?: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 369, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 369, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 369, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 369, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Empty array passed to foreach.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 373, 'nodeType' => 'PhpParser\\Node\\Stmt\\Foreach_', 'identifier' => 'foreach.emptyArray', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::getFlatReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 393, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 393, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'parent\' might not exist on array{key: string, parent?: string, depth: int, children: array, self_time?: float, total_time?: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 402, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'parent\' might not exist on array{key: string, parent?: string, depth: int, children: array, self_time?: float, total_time?: float}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 434, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 434, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 434, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 434, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $rootOperations in empty() always exists and is always falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 437, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 437, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $offset of function array_splice expects int, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 474, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 474, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::buildHierarchicalNode() has parameter $structure with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 481, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 481, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::buildHierarchicalNode() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 481, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 481, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::buildExecutionTreeNode() has parameter $structure with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 509, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 509, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\EnhancedPerformanceCollector::getNestedSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'line' => 541, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 541, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Events\\OperationCompletedEvent::toTelemetryData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Events\\OperationFailedEvent::toTelemetryData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Events\\OperationStartedEvent::__construct() has parameter $contextData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\ControllerPerformanceMiddleware::extractControllerInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on non-empty-list on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\ControllerPerformanceMiddleware::parseControllerString() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of method App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface::endTiming() (void) is used.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.void', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $duration of method App\\Framework\\Performance\\PerformanceConfig::isSlowQuery() expects float, null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 129, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\DatabasePerformanceMiddleware::sanitizeQuery() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 133, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\DatabasePerformanceMiddleware::sanitizeBindings() has parameter $bindings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 136, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\DatabasePerformanceMiddleware::sanitizeBindings() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 136, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Http\\Headers::get() invoked with 2 parameters, 1 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with array|null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $contentType in empty() is never defined.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $headers on App\\Framework\\Http\\Response|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Response::$body (string) in isset() is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'summary\' might not exist on array|string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 376, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'categories\' might not exist on array|string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 385, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Http\\Session\\SessionInterface::$id.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 422, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 422, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware::buildHierarchicalTable() has parameter $operations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 549, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 549, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware::buildHierarchicalRows() has parameter $operations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'line' => 588, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 588, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Performance\\NestedPerformanceTracker::$highResClock is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::startOperation() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::measure() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::getActiveOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::getCompletedOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::getHierarchicalReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 210, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::getFlatReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 291, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between int<1, max> and 0 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 326, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 326, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 367, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 367, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\NestedPerformanceTracker::getDebugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'line' => 416, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 416, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::startOperation() has parameter $contextData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::updateOperation() has parameter $updates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::getActiveOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::getRecentOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::getOperationsByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::getTrends() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 299, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\OperationTracker::calculateTrend() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'line' => 356, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 356, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceConfig::__construct() has parameter $enabledCategories with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceConfig::__construct() has parameter $excludedPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceConfig::__construct() has parameter $thresholds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining values: App\\Framework\\Performance\\PerformanceCategory::DISCOVERY|App\\Framework\\Performance\\PerformanceCategory::SECURITY', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceMetric::create() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceMetric::getContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceMetric::getValues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceMetric::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceReporter::generateReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceReporter::getTopMetricsByTime() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceReporter::getTopMetricsByMemory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceReporter::getMetricsByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 270, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::measure() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::startTiming() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::recordMetric() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::increment() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::generateReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::measureDatabaseQuery() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 136, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::measureCacheOperation() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 144, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::measureViewRender() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 160, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::getSlowestOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\PerformanceService::exportMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 189, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\Measurement::startTiming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\Measurement::endTiming() has parameter $startData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\Measurement::endHighResTiming() has parameter $startData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\Measurement::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Performance\\ValueObjects\\MeasurementCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MeasurementCollection::__construct() has parameter $measurements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MeasurementCollection::export() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::greaterThanOrEqual().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::greaterThanOrEqual().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MemorySummary::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MemorySummary::jsonSerialize() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MetricContext::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MetricContext::validateData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MetricContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MetricContext::normalizeData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\MetricContext::normalizeData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\NestedMeasurement::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\NestedMeasurement::start() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\NestedMeasurement::toHierarchicalArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 196, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\NestedMeasurement::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 226, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\NestedMeasurement::getAllDescendants() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 247, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceScore::__construct() has parameter $metrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceScore::getMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceScore::getRecommendations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 154, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceScore::compareWith() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 178, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceScore::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 212, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceScore::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot::__construct() has parameter $contextData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot::__construct() has parameter $customMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot::start() has parameter $contextData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and 0 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'line' => 350, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 350, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 383, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot::toTelemetryData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'line' => 417, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 417, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\DataEncoder::encode() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match expression does not handle remaining values: 0|int<4, max>', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.unhandled', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\DataEncoder::bitStreamToCodewords() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 297, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\MatrixGenerator::generateMatrix() has parameter $codewords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation "<" between int<0, 7> and 8 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Smaller', 'identifier' => 'smaller.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation "<" between int<0, 7> and 8 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Smaller', 'identifier' => 'smaller.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\MatrixGenerator::addDataModules() has parameter $codewords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">=" between int<0, 7> and 0 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 331, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\GreaterOrEqual', 'identifier' => 'greaterOrEqual.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\MatrixGenerator::addSimpleFormatInfo() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'line' => 346, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Patterns\\FormatInfo::generate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Patterns\\FormatInfo::getPlacementPositions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Patterns\\FormatInfo::placeInMatrix() has parameter $matrix with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Patterns\\FormatInfo::placeInMatrix() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Constant App\\Framework\\QrCode\\Patterns\\MaskingPattern::PATTERNS is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-used-class-constants', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassConstantsNode', 'identifier' => 'classConstant.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Patterns\\MaskingPattern::findAndApplyBest() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeException::dataTooLarge() should return App\\Framework\\QrCode\\QrCodeException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeException::invalidVersion() should return App\\Framework\\QrCode\\QrCodeException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::VAL_PARAMETER_INVALID.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::PROCESSING_FAILED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeException::matrixGenerationFailed() should return App\\Framework\\QrCode\\QrCodeException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::PROCESSING_FAILED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeException::renderingFailed() should return App\\Framework\\QrCode\\QrCodeException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::PROCESSING_FAILED.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeException::invalidTotpUri() should return App\\Framework\\QrCode\\QrCodeException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::VAL_FORMAT_INVALID.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeException::invalidConfiguration() should return App\\Framework\\QrCode\\QrCodeException but returns App\\Framework\\Exception\\FrameworkException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Exception\\ErrorCode::CONFIG_INVALID_VALUE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 112, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeGenerator::analyzeData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeGenerator::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeGenerator::validateData() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'col\' on array{row: int, col: int, dark: bool} in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'dark\' on array{row: int, col: int, dark: bool} in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'row\' on array{row: int, col: int, dark: bool} in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeMatrix::getModules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeMatrix::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeMatrix::validateMatrix() has parameter $modules with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeVersion.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\QrCodeVersion::getAlignmentPositions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeVersion.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeVersion.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 117, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\QrCode\\ReedSolomon\\GaloisField::$expTable type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\QrCode\\ReedSolomon\\GaloisField::$logTable type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\QrCode\\ReedSolomon\\Polynomial::$coefficients type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\ReedSolomon\\Polynomial::__construct() has parameter $coefficients with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\ReedSolomon\\Polynomial::getCoefficients() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\ReedSolomon\\Polynomial::divide() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\QrCode\\ReedSolomon\\ReedSolomonEncoder::$generatorPolynomials type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\ReedSolomon\\ReedSolomonEncoder::encode() has parameter $dataBytes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\ReedSolomon\\ReedSolomonEncoder::encode() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\BlockStructure::createBlocks() has parameter $dataCodewords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\BlockStructure::createBlocks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\BlockStructure::interleaveBlocks() has parameter $blocks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\BlockStructure::interleaveBlocks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\BlockStructure::getBlockInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\QrCodeBlock::__construct() has parameter $dataCodewords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\QrCodeBlock::__construct() has parameter $errorCorrectionCodewords with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\Structure\\QrCodeBlock::getTotalCodewords() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\SvgRenderer::getDimensions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\SvgRenderer::isValidColor() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QrCode\\SvgRenderer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 212, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Expr\\FuncCall and PhpParser\\Node\\Expr\\FuncCall will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\ForbiddenFunctionsRule::processNode() should return list but returns array{PHPStan\\Rules\\RuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Stmt\\Return_ and PhpParser\\Node\\Stmt\\Return_ will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\PreferValueObjectsRule::processNode() should return list but returns array{PHPStan\\Rules\\TipRuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Stmt\\Return_ and PhpParser\\Node\\Stmt\\Return_ will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\TestRule::processNode() should return list but returns array{PHPStan\\Rules\\RuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Expr\\FuncCall and PhpParser\\Node\\Expr\\FuncCall will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\UseClockAbstractionRule::processNode() should return list but returns array{PHPStan\\Rules\\TipRuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Expr\\New_ and PhpParser\\Node\\Expr\\New_ will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\UseDateTimeAbstractionRule::processNode() should return list but returns array{PHPStan\\Rules\\TipRuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Expr\\New_ and PhpParser\\Node\\Expr\\New_ will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\UseFrameworkAbstractionsRule::processNode() should return list but returns array{PHPStan\\Rules\\TipRuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between PhpParser\\Node\\Expr\\FuncCall and PhpParser\\Node\\Expr\\FuncCall will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Quality\\PHPStan\\Rules\\UseTimerAbstractionRule::processNode() should return list but returns array{PHPStan\\Rules\\TipRuleError}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php', 'traitFilePath' => NULL, 'tip' => 'Error is missing an identifier. See: https://phpstan.org/blog/using-rule-error-builder', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QueryBus\\DefaultQueryBus::__construct() has parameter $eventHandlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QueryBus\\DefaultQueryBus::dispatch() with return type void returns null but should not return anything.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.void', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QueryBus\\DefaultQueryBus::dispatch() with return type void returns mixed but should not return anything.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.void', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QueryBus\\QueryHandlerCompiler::compile() has parameter $handlers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QueryBus\\QueryHandlerCompiler::compile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\QueryBus\\QueryHandlerMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Reflection\\Collections\\ParameterCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Serializer\\Serializer::unserialize().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Serializer\\Serializer::unserialize().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function print_r() is forbidden: Use logger or debug() function instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitConfig::__construct() has parameter $exemptPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitConfig::__construct() has parameter $trustedIps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 178, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $anomalyIndicators with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $attackPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $burstAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $geoAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $performanceMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $responseStrategies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::__construct() has parameter $trafficAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::withThreatAnalysis() has parameter $analysisData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::suspicious() has parameter $suspicionData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::getRecommendedStrategy() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimitResult::toAnalysisArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function min expects non-empty-array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'array might be empty.', 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $retryAfter of static method App\\Framework\\RateLimit\\RateLimitResult::exceeded() expects int, float|int<1, max> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::checkLimitWithAnalysis() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::detectBurstPattern() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function min expects non-empty-array, list<(float|int)> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'list<(float|int)> might be empty.', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::analyzeTrafficPatterns() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::analyzeTrafficPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::calculateThreatScore() has parameter $burstAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 225, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::calculateThreatScore() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 225, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::identifyAttackPatterns() has parameter $burstAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::identifyAttackPatterns() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::identifyAttackPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::identifyAnomalyIndicators() has parameter $burstAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 279, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 279, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\RateLimiter::identifyAnomalyIndicators() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'line' => 279, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 279, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowRateLimiter::checkLimitWithAnalysis() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowRateLimiter::getAdvancedAnalytics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowRateLimiter::enhanceAnalysisWithContext() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowRateLimiter::enhanceAnalysisWithContext() has parameter $threatAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowRateLimiter::enhanceAnalysisWithContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowRateLimiter::analyzeUserAgent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function min expects non-empty-array, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 'traitFilePath' => NULL, 'tip' => 'array might be empty.', 'nodeLine' => 288, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\RateLimit\\SlidingWindowTokenBucket::$tokenWindow with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\RateLimit\\SlidingWindowTokenBucket::$analyticsWindow with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Core\\ValueObjects\\Duration::SECOND.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowTokenBucket::consumeWithAnalysis() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getBurstAnalysis() on class-string|object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $threatAnalysis on class-string|object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\SlidingWindowTokenBucket::getAnalytics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getSum() on class-string|object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'line' => 202, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 202, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\Storage\\CacheStorage::getRequestsInWindow() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->value" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\Storage\\CacheStorage::getBaseline() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Cache\\CacheResult and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\Storage\\StorageInterface::getRequestsInWindow() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\RateLimit\\Storage\\StorageInterface::getBaseline() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TimeProvider/SystemTimeProvider.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TimeProvider/SystemTimeProvider.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TimeProvider/SystemTimeProvider.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 11, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Redis\\RedisConfig::__construct() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Redis\\RedisConfig::toConnectionParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::getNativeClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 295, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::getNativeClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 295, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::getNativeClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 303, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::getNativeClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'line' => 338, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 338, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::getNativeClass().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'line' => 339, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 339, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Reflection\\Builder\\ReflectionBuilder::$attributeFlags is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $methodName of method App\\Framework\\Reflection\\Contracts\\MethodReflector::getMethod() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $methodName of method App\\Framework\\Reflection\\Contracts\\MethodReflector::getMethodAttributes() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $methodName of method App\\Framework\\Reflection\\Contracts\\MethodReflector::getMethodParameters() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\Cache\\MetadataCacheManager::getMetadata() has parameter $reflectionClass with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\Cache\\MetadataCacheManager::getMetadataMultiple() has parameter $reflectionClasses with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\Cache\\MetadataCacheManager::getMetadataMultiple() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\Cache\\MetadataCacheManager::extractMetadata() has parameter $class with generic class ReflectionClass but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'line' => 279, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 279, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 283, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionType::getName().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return with type array is incompatible with native type App\\Framework\\Core\\ValueObjects\\Statistics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'return.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @return with type array is incompatible with native type App\\Framework\\Core\\ValueObjects\\Statistics.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 289, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'return.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\CachedReflectionProvider::getAttributeInstances() should return array but returns list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 255, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\CachedReflectionProvider::getMethodAttributeInstances() should return array but returns list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionEnum constructor expects class-string|UnitEnum, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 289, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionEnum constructor expects class-string|UnitEnum, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 328, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 328, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionEnum constructor expects class-string|UnitEnum, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 346, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 346, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionEnum constructor expects class-string|UnitEnum, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 368, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionEnum constructor expects class-string|UnitEnum, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 382, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 382, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$value.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'line' => 397, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 397, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Reflection\\LazyReflectionProxy::$metadata (array|null) is never assigned array so it can be removed from the property type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Reflection\\LazyReflectionProxy::$metadata is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\LazyReflectionProxy::getReflectionClass() should return ReflectionClass but returns ReflectionClass|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionClass::getCases().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 268, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 268, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $object_or_class of function is_a expects object|string, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 305, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method ReflectionClass::getCases().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 445, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 445, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\Cache\\MetadataCacheManager::storeMetadata().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'line' => 458, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 458, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $hitRatio on left side of ?? always exists and is always null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $hitRatio on left side of ?? always exists and is always null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $className in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\WrappedReflectionClass::getAttributeInstances() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\WrappedReflectionMethod::getParameterInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\WrappedReflectionMethod::getAttributeInstances() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Reflection\\WrappedReflectionParameter::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryAttemptEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Events\\RetryAttemptEvent::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryAttemptEvent.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryAttemptEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Events\\RetryFailedEvent::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Events\\RetryFailedEvent::getAttemptHistory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Events\\RetrySucceededEvent::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Retry\\Metrics\\RetryMetrics::$stats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Metrics\\RetryMetrics::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 98, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Metrics\\RetryMetrics::getMostRetriedOperations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Metrics\\RetryMetrics::getMostCommonExceptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\DI\\Initializer does not have the class target.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'attribute.target', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Retry\\RetryManager::$context type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\RetryManager::withContext() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 93, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function usleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\RetryResult::__construct() has parameter $attemptHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\RetryResult::success() has parameter $history with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\RetryResult::failure() has parameter $history with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy::__construct() has parameter $retryableExceptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Strategies\\FixedRetryStrategy::__construct() has parameter $retryableExceptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Retry\\Strategies\\LinearDelayStrategy::__construct() has parameter $retryableExceptions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::__construct() has parameter $namedRoutes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::getStaticRoutesForSubdomain() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::getSubdomainKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::getAllNamedRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::getStaticRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::generateUrl() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\CompiledRoutes::buildUrlFromRoute() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\GenericActionResult::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\GenericActionResult::__construct() has parameter $slots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::prepareParameters() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::prepareParameters() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::prepareParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\Logging\\DefaultLogger. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::prepareParametersFromCollection() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::prepareParametersFromCollection() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\Logging\\DefaultLogger. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::resolveTypedParameter() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\DefaultContainer::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::resolveParameter() has parameter $param with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 143, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ParameterProcessor::resolveParameter() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\ContentNegotiationResult::__construct() has parameter $jsonPayload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\ContentNegotiationResult::__construct() has parameter $viewData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\JsonResult::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\SseResult::addJsonEvent() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $data of method App\\Framework\\Router\\Result\\SseResult::addEvent() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\SseResultWithCallback::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\ViewResult::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\ViewResult::__construct() has parameter $slots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Router\\Result\\WebSocketResult::$subprotocols type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\WebSocketResult::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\WebSocketResult::withSubprotocols() has parameter $subprotocols with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 104, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\Result\\WebSocketResult::getSubprotocols() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\RouteCollection::__construct() has parameter $namedRoutes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\RouteCollection::getStatic() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\RouteCollection::getDynamic() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\RouteCollection::getByMethod() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 13, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Router\\RouteContext::$params type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Router\\RouteMatch::$route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Router\\RouteResponder::$pathProvider is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Router\\RouteResponder::$container is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::all().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::all().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Query::all().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/MethodParameter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\MethodParameter::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/MethodParameter.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/MethodParameter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Router\\ValueObjects\\ParameterCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterCollection::getIterator() should return ArrayIterator but returns ArrayIterator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::enum() has parameter $allowedValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::sort() has parameter $allowedFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::custom() has parameter $constraint with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::with() has parameter $constraint with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 267, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 267, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::get() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 283, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::getParameterNames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 307, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 307, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::getRequiredParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 315, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 315, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::getOptionalParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 323, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 323, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\ParameterConstraints::getDebugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'line' => 331, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 331, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Router\\ValueObjects\\RouteParameters::$parameters type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::fromArray() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::getArray() has parameter $default with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::getArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::all() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::keys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 165, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::values() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::merge() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 203, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::only() has parameter $keys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 219, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::except() has parameter $keys with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 227, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 227, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::getDebugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 288, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::validateAndNormalize() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 301, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\RouteParameters::validateAndNormalize() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 301, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\SubdomainPattern::fromInput() has parameter $input with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Router\\ValueObjects\\SubdomainPattern::fromInput() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/BulkIndexResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\BulkIndexResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/BulkIndexResult.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/BulkIndexResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $connection of method App\\Framework\\Search\\Engines\\DatabaseIndexManager::__construct() has invalid type App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\Engines\\DatabaseIndexManager::$connection has unknown class App\\Framework\\Database\\Connection as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 179, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 229, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 239, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 249, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 250, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseIndexManager::getColumnDefinition() has parameter $fieldConfig with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 321, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 332, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 344, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseIndexManager::deserializeIndexConfig() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 348, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $connection of method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::__construct() has invalid type App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\Engines\\DatabaseSearchEngine::$connection has unknown class App\\Framework\\Database\\Connection as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\Engines\\DatabaseSearchEngine::$config is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::index() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::update() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Possibly invalid array key type (list|string).', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.invalidOffset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getAttribute() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 226, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::buildSearchParams() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 283, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function array_map expects array, list|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 321, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::buildFilterSQL() has parameter $filter with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 326, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 326, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::getFilterParams() has parameter $filter with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 343, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::getFilterParams() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 343, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 343, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::convertToHits() has parameter $results with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 356, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 356, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::convertToHits() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 356, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 356, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::generateHighlights() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 384, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::generateHighlights() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 384, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 384, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method prepare() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 427, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 427, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::getMaxScore() has parameter $hits with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 433, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 433, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method exec() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 461, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 461, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::prepareDocumentForIndexing() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 464, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 464, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\Engines\\DatabaseSearchEngine::prepareDocumentForIndexing() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'line' => 464, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 464, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchEngine::index() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchEngine::update() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchEngineStats::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Attributes\\EventListener does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Attributes\\EventListener does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Attributes\\EventListener does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Attribute class App\\Framework\\Attributes\\EventListener does not exist.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'attribute.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchFieldConfig::__construct() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchFieldConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchFilter::in() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchFilter::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchHit::getHighlightFor() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchHit::withHighlight() has parameter $highlight with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchHit::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchHit::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexConfig::getSearchableFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexConfig::getFilterableFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexConfig::getSortableFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexStats::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexStats::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexingService::bulkIndexEntities() has parameter $entities with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchIndexingService::getSearchableEntityTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 149, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchQuery::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\SearchQueryBuilder::$filters type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\SearchQueryBuilder::$boosts type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\SearchQueryBuilder::$fields type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\SearchQueryBuilder::$highlightFields type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchQueryBuilder::filters() has parameter $filters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchQueryBuilder::fields() has parameter $fields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchQueryBuilder::highlight() has parameter $fields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchQueryBuilder::whereIn() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchResult::getIds() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchResult::getDocuments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchResult::getScores() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchService::index() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchService::update() has parameter $document with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchSortBy::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortField.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchSortField::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortField.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortField.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableAdapter::toSearchDocument() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableAdapter::getSearchableFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableAdapter::getBoosts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 62, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableMapping::getSearchFields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableMapping::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\SearchableMappingBuilder::$fieldMappings type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Search\\SearchableMappingBuilder::$boosts type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\FieldMapping::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableMappingRegistry::getAllMappings() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableMappingRegistry::getEntityTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Search\\SearchableMappingRegistry::registerFromConfig() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Cache\\CacheResult and App\\Framework\\Security\\RequestSigning\\SigningKey will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, object given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\EntityManagerSigningKeyRepository::findByKeyId() should return App\\Framework\\Security\\RequestSigning\\SigningKey|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::persist().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::flush().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::remove().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::flush().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\EntityManagerSigningKeyRepository::getAllActive() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::createQuery().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::beginTransaction().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::persist().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::commit().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::rollback().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\EntityManagerSigningKeyRepository::getExpiringKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::createQuery().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\EntityManager::createQuery().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\HttpClientSigningMiddleware::__construct() has parameter $headersToSign with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function gmdate() is forbidden: Use Clock::now()->setTimezone() and format() instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $body of method App\\Framework\\Security\\RequestSigning\\HttpClientSigningMiddleware::createDigest() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\Http\\HttpRequest constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\HttpClientSigningMiddleware::parseQueryParams() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\InMemorySigningKeyRepository::getAllActive() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSignature::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigner::sign() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigner::signRequest() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function gmdate() is forbidden: Use Clock::now()->setTimezone() and format() instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigningConfig::__construct() has parameter $defaultHeaders with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigningConfig::__construct() has parameter $exemptPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigningConfig::__construct() has parameter $securityHeaders with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigningMiddleware::__construct() has parameter $exemptPaths with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $headers of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $headers of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $body of class App\\Framework\\Http\\HttpResponse constructor expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $headers of class App\\Framework\\Http\\HttpResponse constructor expects App\\Framework\\Http\\Headers, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $keyId on App\\Framework\\Security\\RequestSigning\\RequestSignature|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $algorithm on App\\Framework\\Security\\RequestSigning\\RequestSignature|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigningService::signOutgoingRequest() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $keyId on App\\Framework\\Security\\RequestSigning\\RequestSignature|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $algorithm on App\\Framework\\Security\\RequestSigning\\RequestSignature|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\RequestSigningService::getActiveKeys() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 'line' => 117, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 117, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKey.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKey.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKey.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\SigningKeyRepository::getAllActive() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepository.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\SigningString::build() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\SigningString::getDefaultHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\SigningString::getRecommendedHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Security\\RequestSigning\\SigningString::getSecurityHeaders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\SerializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $depth of function json_encode expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between non-empty-string and false will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\SerializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Serializer\\Exception\\SerializeException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Serializer\\Exception\\SerializeException constructor expects int, JsonException given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\DeserializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\DeserializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\DeserializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\DeserializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $depth of function json_decode expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Serializer\\Exception\\DeserializeException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Serializer\\Exception\\DeserializeException constructor expects int, JsonException given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\SerializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Serializer\\Exception\\SerializeException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Serializer\\Exception\\SerializeException constructor expects int, Exception given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $callback of function set_error_handler expects (callable(int, string, string, int): bool)|null, Closure(): void given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Serializer\\Exception\\DeserializeException constructor invoked with 1 parameter, 2-6 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 116, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of class App\\Framework\\Serializer\\Exception\\DeserializeException constructor expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of class App\\Framework\\Serializer\\Exception\\DeserializeException constructor expects int, Throwable given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\Php\\PhpSerializerConfig::__construct() has parameter $allowedClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\Php\\PhpSerializerConfig::safe() has parameter $allowedClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\Php\\PhpSerializerConfig::getOptions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\SerializerFactory::createSafePhpSerializer() has parameter $allowedClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Serializer\\SerializerFactory::createCustomPhpSerializer() has parameter $allowedClasses with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Sitemap\\SitemapGenerator::supportsMethod() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanResult.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\CountingResult::__construct() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\CountingResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\NumericResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericResult.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function min expects non-empty-array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'list might be empty.', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator::analyzeThreatPatterns() has parameter $intervals with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator::analyzeThreatPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $intervalVariance on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator::calculateVariance() has parameter $intervals with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator::detectRampUpPattern() has parameter $intervals with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator::calculateConfidence() has parameter $patterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 147, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator::calculateThreatScore() has parameter $patterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 170, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult::__construct() has parameter $threatAnalysis with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult::__construct() has parameter $timestamps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult::getTimestampsAsFloats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult::getBurstAnalysis() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow implements generic interface App\\Framework\\SlidingWindow\\SlidingWindow but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow::__construct() has parameter $aggregator with generic interface App\\Framework\\SlidingWindow\\Aggregator\\SlidingWindowAggregator but does not specify its types: TResult', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow::$cacheTtl is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Framework\\Core\\ValueObjects\\Timestamp::diff() expects App\\Framework\\Core\\ValueObjects\\Timestamp, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toArray() on class-string|object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\SlidingWindow\\InMemorySlidingWindow implements generic interface App\\Framework\\SlidingWindow\\SlidingWindow but does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\InMemorySlidingWindow::__construct() has parameter $aggregator with generic interface App\\Framework\\SlidingWindow\\Aggregator\\SlidingWindowAggregator but does not specify its types: TResult', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $other of method App\\Framework\\Core\\ValueObjects\\Timestamp::diff() expects App\\Framework\\Core\\ValueObjects\\Timestamp, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method toArray() on class-string|object.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowFactory::createCountingWindow() return type with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowFactory::createBooleanWindow() return type with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowFactory::createNumericWindow() return type with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowFactory::createRateLimitWindow() return type with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowFactory::createCustomWindow() has parameter $aggregator with generic interface App\\Framework\\SlidingWindow\\Aggregator\\SlidingWindowAggregator but does not specify its types: TResult', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowFactory::createCustomWindow() return type with generic interface App\\Framework\\SlidingWindow\\SlidingWindow does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowStats::__construct() has parameter $aggregatedData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\SlidingWindowStats::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/WindowEntry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SlidingWindow\\WindowEntry::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/WindowEntry.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/WindowEntry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\ActionRegistry::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionRegistry.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\ActionResult::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\ActionResult::__construct() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\ActionResult::success() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\ActionResult::failure() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction::validatePayload() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction::execute() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction::getRequiredPermissions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction::validatePayload() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction::execute() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction::getRequiredPermissions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction::__construct() has parameter $requiredPermissions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction::validatePayload() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction::execute() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction::getRequiredPermissions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\PasswordResetAction::validatePayload() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\PasswordResetAction::execute() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\PasswordResetAction::getRequiredPermissions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\SmartlinkAction::validatePayload() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\SmartlinkAction::execute() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Actions\\SmartlinkAction::getRequiredPermissions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Commands\\ExecuteSmartlinkCommand::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkCommand.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Commands\\GenerateSmartlinkCommand::__construct() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService::generate() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService::exists() should return bool but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService::getActiveTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::getKeys().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService::serializeData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 124, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService::deserializeData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 140, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 152, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Smartlinks\\Services\\InMemorySmartLinkService::$tokens type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\InMemorySmartLinkService::generate() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\InMemorySmartLinkService::getActiveTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\SmartlinkService::generate() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\Services\\SmartlinkService::getActiveTokens() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\SmartlinkData::__construct() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateInterval is forbidden: Use App\\Framework\\DateTime\\DateTime::createInterval() instead for consistent error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\TokenConfig::__construct() has parameter $allowedIpRanges with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Smartlinks\\TokenConfig::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $callback of function call_user_func expects callable(): mixed, array{string, \'fromArray\'} given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between T of App\\Framework\\StateManagement\\SerializableState and App\\Framework\\StateManagement\\SerializableState will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\CacheBasedStateManager::for() should return App\\Framework\\StateManagement\\CacheBasedStateManager but returns App\\Framework\\StateManagement\\CacheBasedStateManager.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheKey::from().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\CacheBasedStateManager::log() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 204, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\StateManagement\\InMemoryStateManager::$states type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\StateManagement\\InMemoryStateManager::$expirationTimes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $callback of function call_user_func expects callable(): mixed, array{string, \'fromArray\'} given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between T of App\\Framework\\StateManagement\\SerializableState and App\\Framework\\StateManagement\\SerializableState will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::add().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $callback of function call_user_func expects callable(): mixed, array{string, \'fromArray\'} given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\InMemoryStateManager::for() should return App\\Framework\\StateManagement\\InMemoryStateManager but returns App\\Framework\\StateManagement\\InMemoryStateManager.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/SerializableState.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\SerializableState::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/SerializableState.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/SerializableState.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\SerializableState::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/SerializableState.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/SerializableState.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\StateManagerFactory::createForCircuitBreaker() return type with generic class App\\Framework\\StateManagement\\CacheBasedStateManager does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\StateManagement\\StateManagerFactory::createCacheBased()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $stateClass of method App\\Framework\\StateManagement\\StateManagerFactory::createCacheBased() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\StateManagerFactory::createForErrorBoundary() return type with generic class App\\Framework\\StateManagement\\CacheBasedStateManager does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\StateManagerFactory::createForRateLimiter() return type with generic class App\\Framework\\StateManagement\\CacheBasedStateManager does not specify its types: T', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\StateManagement\\StateManagerFactory::createCacheBased()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $stateClass of method App\\Framework\\StateManagement\\StateManagerFactory::createCacheBased() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\Core\\ValueObjects\\Duration via private constructor App\\Framework\\Core\\ValueObjects\\Duration::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $nanoseconds of class App\\Framework\\Core\\ValueObjects\\Duration constructor expects int, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Percentage::fromFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StateManagement\\StateManagerStatistics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Percentage::toFloat().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/GenerateStaticSites.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\StaticSite\\GenerateStaticSites::$outputDirectory is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/GenerateStaticSites.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/GenerateStaticSites.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\RouteCollector::collectRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Router\\HttpRouter::getRoutes().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Router\\RouteCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Router\\Route not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $path on an unknown class App\\Framework\\Router\\Route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $methods on an unknown class App\\Framework\\Router\\Route.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\RouteCollector::filterRoutes() has parameter $exclude with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\RouteCollector::filterRoutes() has parameter $routes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\RouteCollector::filterRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticPageCollector::collectStaticPages() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Router\\HttpRouter::getRoutes().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Router\\RouteCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticPageCollector::collectAllGetRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Router\\HttpRouter::getRoutes().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Router\\RouteCollection::getAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticPageCollector::filterRoutes() has parameter $exclude with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticPageCollector::filterRoutes() has parameter $routes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticPageCollector::filterRoutes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\StaticSite\\StaticSiteGenerator::$routesToGenerate type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticSiteGenerator::__construct() has parameter $routesToGenerate with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $headers of class App\\Framework\\Http\\HttpRequest constructor expects App\\Framework\\Http\\Headers, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $body of class App\\Framework\\Http\\HttpRequest constructor expects string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $path of class App\\Framework\\Http\\HttpRequest constructor expects string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to private method handleRequest() of class App\\Framework\\Core\\Application.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.private', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Response::getBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticSiteGenerator::setRoutesToGenerate() has parameter $routes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\StaticSite\\StaticSiteMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access offset 0 on App\\Framework\\Reflection\\Collections\\AttributeCollection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.nonOffsetAccessible', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\DocBlockParser::parseDocBlock() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\DocBlockParser::extractContent() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 7, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $string of function explode expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\DocBlockParser::parseLineContent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\DocBlockParser::parseAfterTag() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $array of function implode expects array, list given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\SyntaxHighlighter\\Formatters\\FormatterInterface::setTheme().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::format() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::format() has parameter $tokens with no value type specified in iterable type App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection|array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::format() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::formatSingle() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::formatLegacy() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::formatLegacy() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter::getLegacyColor() has parameter $tokenType with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\FormatterInterface::format() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\FormatterInterface::formatSingle() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::$customTheme type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::format() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::format() has parameter $tokens with no value type specified in iterable type App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection|array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::format() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::formatSingle() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::getCss() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::setTheme() has parameter $theme with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::formatLegacy() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 162, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::formatLegacy() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 162, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter::generateCustomThemeCss() has parameter $theme with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::$formatters type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::highlight() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::highlightWithCss() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::highlightWithoutCss() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::getCss() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::highlightWithOffset() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 118, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::highlightFileSegment() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter::highlightStream() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Static call to instance method stdClass::resetCssOutput().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'method.staticCall', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Adapters\\PerformanceCollectorAdapter::startTiming() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Adapters\\PerformanceCollectorAdapter::measure() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Adapters\\PerformanceCollectorAdapter::recordMetric() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 131, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Performance\\PerformanceMetric::withValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 150, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Adapters\\PerformanceCollectorAdapter::increment() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Performance\\PerformanceMetric::getValue().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 169, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 169, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 223, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/TelemetryConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Config\\TelemetryConfig::fromArray() has parameter $config with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/TelemetryConfig.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/TelemetryConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Telemetry\\Exporters\\FileExporter::$operationsHandle (resource|null) does not accept resource|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 153, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Telemetry\\Exporters\\FileExporter::$metricsHandle (resource|null) does not accept resource|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Telemetry\\Exporters\\FileExporter::$eventsHandle (resource|null) does not accept resource|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'line' => 193, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 193, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Telemetry\\Exporters\\PrometheusExporter::$endpoint is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $labels of method App\\Framework\\Telemetry\\Exporters\\PrometheusExporter::recordCounter() expects array, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $labels of method App\\Framework\\Telemetry\\Exporters\\PrometheusExporter::recordGauge() expects array, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $labels of method App\\Framework\\Telemetry\\Exporters\\PrometheusExporter::recordHistogram() expects array, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $labels of method App\\Framework\\Telemetry\\Exporters\\PrometheusExporter::recordGauge() expects array, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::getConfig().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::getConfig().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::getConfig().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::getConfig().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function substr expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 136, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Middleware\\TelemetryDatabaseMiddleware::sanitizeQuery() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Database\\ConnectionInterface::getConfig().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware::getSpanName() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware::createRequestAttributes() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware::addResponseAttributes() has parameter $response with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware::setSpanStatus() has parameter $response with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 149, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $paramName of method App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware::isSensitiveParameter() expects string, int|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'line' => 172, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 172, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware::getClientIp() has parameter $request with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\OperationHandle::recordMetric() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\OperationHandle::recordEvent() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Telemetry\\UnifiedTelemetryService::$circuitBreaker is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\ValueObjects\\Event::info() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\ValueObjects\\Event::warning() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\ValueObjects\\Event::error() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\ValueObjects\\Metric::counter() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\ValueObjects\\Metric::gauge() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 84, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Telemetry\\ValueObjects\\Metric::histogram() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Operation.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Operation.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Operation.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @var for property App\\Framework\\Template\\Processing\\ProcessorResolver::$resolvedProcessors with type App\\Framework\\Template\\Processing\\DomProcessor|array is not subtype of native type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'property.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Template\\Processing\\ProcessorResolver::$resolvedProcessors type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/TemplateContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Template\\TemplateContext::$data type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Template/TemplateContext.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Template/TemplateContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractClasses() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractAttributes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractFunctions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractUseStatements() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::findNextIdentifier() has parameter $startToken with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::determineAttributeTarget() has parameter $attributeToken with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractVisibility() has parameter $functionToken with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "-" between int|string|false and 1 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Minus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "-" between int|string|false and 5 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Minus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::hasModifier() has parameter $targetToken with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "-" between int|string|false and 1 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Minus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Binary operation "-" between int|string|false and 10 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Minus', 'identifier' => 'binaryOp.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractUseStatement() has parameter $useToken with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer::extractUseStatement() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\PhpTokenizer::createToken() has parameter $allTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenClassifier::classify() has parameter $allTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenClassifier::classifyString() has parameter $allTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenClassifier::isTypeHintContext() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 213, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenContextAnalyzer::analyzeContext() has parameter $allTokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenContextAnalyzer::enterClassScope() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenContextAnalyzer::enterFunctionScope() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenContextAnalyzer::enterNamespaceScope() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenContextAnalyzer::findNextIdentifier() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\TokenContextAnalyzer::extractNamespace() has parameter $tokens with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 128, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/DiscoveryState.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\DiscoveryState::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/DiscoveryState.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/DiscoveryState.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 45, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\Token::is() has parameter $tokenId with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection::getValues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection::getCleanValues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 158, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\TokenContext::__construct() has parameter $scopeStack with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tokenizer\\ValueObjects\\TokenContext::with() has parameter $updates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpCache::getStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpCache.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpConfigurationValidation::__construct() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpConfigurationValidation::__construct() has parameter $recommendedChanges with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpConfigurationValidation::__construct() has parameter $warnings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpConfigurationValidation::getAllIssues() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpConfigurationValidation::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpQrData::getManualSetupInstructions() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpQrData::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $length of function hash_hkdf expects int<0, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpSecret::getMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 210, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpSecret::__unserialize() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 269, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpService::getSupportedAlgorithms() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 186, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpService::getRecommendedChanges() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 350, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 350, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpService::getDefaultConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 376, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Totp\\TotpVerificationResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 131, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $num of function abs expects float|int, int|int<1, max>|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::export() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::formatTrace() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::buildSpanTree() has parameter $spans with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::buildSpanTree() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::renderSpanTree() has parameter $spans with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $text of method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::colorize() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $text of method App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter::colorize() expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $connection of method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::__construct() has invalid type App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::$connection has unknown class App\\Framework\\Database\\Connection as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::$batchSize is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::export() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method beginTransaction() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method commit() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method rollBack() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::insertTrace() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method execute() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method lastInsertId() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::insertSpans() has parameter $spans with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 134, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method execute() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method execute() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 197, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method execute() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 198, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::getTraceById() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method fetchOne() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method fetchAll() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 232, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function strtotime() is forbidden: Use Clock::fromString() instead for better error handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 233, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::searchTraces() has parameter $criteria with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter::searchTraces() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 245, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method fetchAll() on an unknown class App\\Framework\\Database\\Connection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 288, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\FileTraceExporter::export() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\Exporters\\JaegerExporter::$batchSize is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::export() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::convertToJaegerFormat() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::convertToJaegerFormat() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::convertTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::convertTags() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::convertLogs() has parameter $events with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::convertLogs() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 105, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\JaegerExporter::sendToJaeger() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\HttpClient::post().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::export() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertToOTLPFormat() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertToOTLPFormat() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertSpans() has parameter $spans with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertSpans() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 87, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertAttributes() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertAttributes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertEvents() has parameter $events with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::convertEvents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 141, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter::sendToOTLP() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\HttpClient::post().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceCollector::__construct() has parameter $exporters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceCollector::logTraceSummary() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\TraceContext::$spans type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceContext::startSpan() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 64, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceContext::getAllSpans() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceContext::getFinishedSpans() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceContext::addEvent() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceExporter.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceExporter::export() has parameter $traceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceExporter.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceExporter.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\TraceSpan::$events type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\TraceSpan::$errors type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Tracing\\TraceSpan::$tags type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::getTags() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::getEvents() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::getErrors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::addTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::addEvent() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\TraceSpan::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Tracer::startSpan() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Tracer::addEvent() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Tracing\\Tracer::trace() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidGenerator referenced with incorrect case: App\\Framework\\Ulid\\ULIDGenerator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidValidator referenced with incorrect case: App\\Framework\\Ulid\\ULIDValidator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidParser referenced with incorrect case: App\\Framework\\Ulid\\ULIDParser.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidValidator referenced with incorrect case: App\\Framework\\Ulid\\ULIDValidator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 72, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidParser referenced with incorrect case: App\\Framework\\Ulid\\ULIDParser.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidValidator referenced with incorrect case: App\\Framework\\Ulid\\ULIDValidator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Ulid\\UlidValidator referenced with incorrect case: App\\Framework\\Ulid\\ULIDValidator.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.nameCase', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ulid\\Ulid::__debugInfo() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ulid\\Ulid::__debugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Ulid\\UlidParser::getTimestampMs() should return int but returns float|int.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Framework\\UserAgent\\UserAgent via private constructor App\\Framework\\UserAgent\\UserAgent::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 122, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.leftAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/EnginePatterns.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\UserAgent\\Patterns\\EnginePatterns::getGeckoVersionMap() should return array but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/EnginePatterns.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/EnginePatterns.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$identifiers of method App\\Framework\\Cache\\Cache::get() expects App\\Framework\\Cache\\CacheIdentifier, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Cache\\CacheResult and App\\Framework\\UserAgent\\ParsedUserAgent will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\UserAgent\\ParsedUserAgent given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Validation\\Exceptions\\ValidationException::$errors type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Validation\\Exceptions\\ValidationException::$field (string) does not accept int|string.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'assign.propertyType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Exceptions\\ValidationException::outOfRange() has parameter $max with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Exceptions\\ValidationException::outOfRange() has parameter $min with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Exceptions\\ValidationException::outOfRange() has parameter $value with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Exceptions\\ValidationException::duplicateValue() has parameter $value with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 251, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 251, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Exceptions\\ValidationException::businessRuleViolation() has parameter $affectedFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 262, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @param for parameter $validator with type callable is not subtype of native type Closure.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Stmt\\ClassMethod', 'identifier' => 'parameter.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc type for property App\\Framework\\Validation\\Rules\\Custom::$validator with type callable is not subtype of native type Closure.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'property.phpDocType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_callable() with callable(): mixed will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Validation\\Rules\\In::$values type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\Rules\\In::__construct() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\ValidationFormHandler::extractRequestData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 70, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access on non-nullable type App\\Framework\\Http\\RequestBody. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafePropertyFetch', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $haystack of function str_contains expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->path" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $location of class App\\Framework\\Http\\Responses\\RedirectResponse constructor expects App\\Framework\\Http\\Uri, App\\Framework\\Http\\Uri|string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\ValidationFormHandler::getErrors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\ValidationFormHandler::getOldInput() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Validation\\ValidationResult::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationResult.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer::hasUserContent() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer::hasCsrfTokens() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer::hasTimestamps() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer::hasRandomElements() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer::calculateStaticRatio() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\SmartTemplateAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\SmartTemplateAnalyzer::determineOptimalStrategy() has parameter $dependencies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\SmartTemplateAnalyzer::findFragments() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 171, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 173, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\TemplateAnalysis::__construct() has parameter $dependencies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\TemplateAnalysis::__construct() has parameter $fragments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Analysis\\TemplateAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalyzer.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheDiagnostics::$metrics is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheDiagnostics::$metrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheDiagnostics::$cache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 10, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\CacheDiagnostics::getPerformanceReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::calculateHitRate().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::getAverageRenderTime().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::getCacheSize().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::getMostCachedTemplates().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::getStrategyDistribution().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::getMemoryUsage().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::generateRecommendations().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\CacheDiagnostics::analyzeTemplate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::getOptimizationSuggestions().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\CacheDiagnostics::warmupCache() has parameter $templates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\CacheDiagnostics::warmupCache() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Undefined variable: $template', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\Variable', 'identifier' => 'variable.undefined', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\CacheDiagnostics::healthCheck() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::testCacheConnection().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::testTemplateAnalyzer().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::testFragmentCache().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 80, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::testStrategies().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 81, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::checkMemoryUsage().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::checkDiskSpace().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 83, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheDiagnostics::determineOverallHealth().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheManager::$strategies type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheManager::$lastAnalysis is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\CacheManager::__construct() has parameter $strategyMapping with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheManager::$fragmentCache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\CacheManager::$strategyMapping is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/FragmentCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\FragmentCache::fragment() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/FragmentCache.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/FragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\FragmentCache::invalidateByTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/FragmentCache.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/FragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Keys/SmartKeyGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Keys\\SmartKeyGenerator::generate() has no return type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Keys/SmartKeyGenerator.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Keys/SmartKeyGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.return', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/SmartCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\SmartCache::getCacheStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/SmartCache.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/SmartCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\Strategies\\ComponentCacheStrategy::$cache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\Strategies\\FragmentCacheStrategy::$cache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy::$cache is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy::hasUserData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy::hasVolatileData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy::getNonVolatileData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy::getNonVolatileData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Caching\\TaggedFragmentCache::$tagMapping type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TaggedFragmentCache::fragment() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TaggedFragmentCache::invalidateByTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 44, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TaggedFragmentCache::hasFragment() should return bool but returns array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TaggedFragmentCache::tagFragment() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TaggedFragmentCache::getKeysByTag() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TemplateContext::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Caching\\TemplateContext::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ComponentCache::get() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ComponentCache::set() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ComponentCache::generateHash() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ComponentRenderer::render() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between string and null will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $innerHTML on Dom\\Element|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 37, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method insertBefore() on Dom\\Element|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\DomHeadService::addScript() has parameter $attributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\DomWrapper::findElementsByNameRecursive() has parameter $elements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\DomWrapper::findElementsByAttributeRecursive() has parameter $elements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 111, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\DomWrapper::findElementsByClassRecursive() has parameter $elements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\View\\ElementCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ElementCollection::__construct() has parameter $elements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ElementCollection::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ElementCollection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 255, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\ElementCollection::getIterator() return type with generic class ArrayIterator does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'line' => 271, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 271, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Ternary operator condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\Ternary', 'identifier' => 'ternary.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method render() on App\\Framework\\View\\Caching\\CacheManager|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $template of method App\\Framework\\View\\Caching\\CacheManager::invalidateTemplate() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Engine::getCacheStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\Caching\\CacheManager::getStats().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\EnhancedTemplateProcessor::__construct() has parameter $domProcessors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\EnhancedTemplateProcessor::__construct() has parameter $stringProcessors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method object::process().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 36, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method object::process().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method object::process().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\EnhancedTemplateProcessor::__debugInfo() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\EnhancedTemplateProcessor::__debugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Exception\\TemplateNotFound::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $context of method App\\Framework\\Exception\\FrameworkException::__construct() expects App\\Framework\\Exception\\ExceptionContext, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $code of method App\\Framework\\Exception\\FrameworkException::__construct() expects int, Throwable|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #4 $previous of method App\\Framework\\Exception\\FrameworkException::__construct() expects Throwable|null, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Functions\\ImageSlotFunction::$componentRenderer is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $image of method App\\Domain\\Media\\ImageSourceSetGenerator::generatePictureElement() expects App\\Domain\\Media\\Image, App\\Domain\\Media\\Image|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Functions\\UrlFunction::__invoke() has parameter $params with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $objectOrClass of class ReflectionClass constructor expects class-string|T of object, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $path of function dirname expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $templates on App\\Framework\\Discovery\\Results\\DiscoveryRegistry|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $templates on App\\Framework\\Discovery\\Results\\DiscoveryRegistry|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $templates on App\\Framework\\Discovery\\Results\\DiscoveryRegistry|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateMapResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Loading\\Resolvers\\TemplateMapResolver::__construct() has parameter $templates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateMapResolver.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateMapResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateCache.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Loading\\TemplateCache::$cache type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateCache.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateCache.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateContentLoader.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateContentLoader.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateContentLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Loading\\TemplateLoader::__construct() has parameter $templates with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Loading\\TemplateLoader::debugTemplatePath() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'line' => 112, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 112, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type App\\Framework\\View\\Loading\\TemplatePathResolver supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 127, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Loading\\TemplatePathResolver::__construct() has parameter $resolvers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $processorClass of method App\\Framework\\Template\\Processing\\ProcessorResolver::resolve() expects class-string, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $processorClass of method App\\Framework\\Template\\Processing\\ProcessorResolver::resolve() expects class-string, class-string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 24, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\AssetInjector::$manifest type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $json of function json_decode expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $nodeType on Dom\\Node|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $child of method Dom\\Node::removeChild() expects Dom\\Node, Dom\\Node|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $node of method App\\Framework\\View\\Processors\\CommentStripProcessor::removeComments() expects Dom\\Node, Dom\\Node|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\ComponentProcessor::extractAttributes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\CsrfReplaceProcessor::$container is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\CsrfReplaceProcessor::$formIdGenerator is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::replaceTokenForFormId() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::replaceTokenForFormId() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::replaceOldInputForForm() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $session of class App\\Framework\\Http\\Session\\FormDataStorage constructor expects App\\Framework\\Http\\Session\\Session, App\\Framework\\Http\\Session\\SessionInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 96, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::replaceErrorsForForm() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $session of class App\\Framework\\Http\\Session\\ValidationErrorBag constructor expects App\\Framework\\Http\\Session\\Session, App\\Framework\\Http\\Session\\SessionInterface given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::cleanupOldInputPlaceholders() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::cleanupErrorPlaceholders() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::removeErrorDisplay() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 224, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 224, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 235, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfReplaceProcessor::addErrorClassToField() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'line' => 237, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 237, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\CsrfTokenProcessor::$cacheMode is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\CsrfTokenProcessor::$debugMode is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfTokenProcessor::shouldProcessCsrf() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfTokenProcessor::replaceTokensWithPlaceholders() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfTokenProcessor::replacePlaceholdersWithTokens() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfTokenProcessor::replaceTemplateCsrfCalls() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\CsrfTokenProcessor::replaceHtmlCsrfPatterns() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\DateFormatProcessor::process() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace_callback expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\EscapeProcessor::process() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $expr of method App\\Framework\\View\\Processors\\ForProcessor::resolveValue() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\View\\RenderContext::$model.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property Dom\\Node::$innerHTML.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method render() on App\\Framework\\View\\TemplateProcessor|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 63, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\ForProcessor::resolveValue() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'line' => 80, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 80, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\FormProcessor::$formService is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between non-falsy-string and \'\' will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between non-falsy-string and \'\' will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\IfProcessor::resolveValue() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::querySelectorAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::createDocumentFragment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 30, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $childNodes on Dom\\Element|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::importNode().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::createComment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $template of method App\\Framework\\View\\Loading\\TemplateLoader::getTemplatePath() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method querySelector() on Dom\\HTMLElement|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 19, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getElementsByTagName() on Dom\\HTMLElement|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getElementsByTagName() on Dom\\HTMLElement|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method querySelector() on Dom\\HTMLElement|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\Processors\\PhpVariableProcessor::$allowedFunctions type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceMethodCalls() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceMethodCalls() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceFunctionCalls() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceFunctionCalls() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceObjectProperties() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 179, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceObjectProperties() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceArrayAccess() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 226, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceArrayAccess() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceSimpleVariables() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceSimpleVariables() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::parseArguments() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 283, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::parseArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 283, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 283, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::splitArguments() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 348, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 348, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function htmlspecialchars expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 391, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function htmlspecialchars expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 407, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 407, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTime is forbidden: Use App\\Framework\\DateTime\\DateTime instead for consistent timezone handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 418, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 418, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PhpVariableProcessor::replaceTernaryOperators() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'line' => 437, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 437, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::process() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 40, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::replaceTemplateFunctions() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::resolveMethodCall() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::resolveEscaped() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::resolveValue() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 184, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::parseParams() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 205, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::parseParams() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 205, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\PlaceholderReplacer::splitParams() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 285, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $nodeType on Dom\\Node|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $nodeValue on Dom\\Node|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $child of method Dom\\Node::removeChild() expects Dom\\Node, Dom\\Node|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method hasChildNodes() on Dom\\Node|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $node of method App\\Framework\\View\\Processors\\RemoveEmptyLinesProcessor::removeEmptyTextNodes() expects Dom\\Node, Dom\\Node|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function preg_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 18, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::querySelectorAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 25, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::createDocumentFragment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 29, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::querySelectorAll().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\View\\DomWrapper::createDocumentFragment().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\Processors\\VoidElementsSelfClosingProcessor::process() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 22, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\RenderContext::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\RenderContext::__construct() has parameter $slots with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\TemplateFunctions::$functions type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\Container::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unable to resolve the template type T in call to method App\\Framework\\DI\\Container::get()', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-error-unable-to-resolve-template-type', 'nodeLine' => 20, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.templateType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property object::$functionName.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 21, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\TemplateFunctions::get() should return App\\Framework\\View\\Functions\\TemplateFunction|null but returns object|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\TemplateMapper::map() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Reflection\\WrappedReflectionClass::getFullyQualified().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\View\\TemplateProcessor::$resolvedProcessors type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\TemplateProcessor::__construct() has parameter $domProcessors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\TemplateProcessor::__construct() has parameter $stringProcessors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\TemplateProcessor::__debugInfo() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\View\\TemplateProcessor::__debugInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 50, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::__construct() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::success() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::failure() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::failure() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::warning() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::warning() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::withConfidence() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::withConfidence() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 144, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::getFindingsByType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 231, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 290, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\AnalysisType::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between $this(App\\Framework\\Waf\\Analysis\\AnalysisType)&App\\Framework\\Waf\\Analysis\\AnalysisType::BODY and App\\Framework\\Waf\\Analysis\\AnalysisType::BODY is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\AnalyzerInterface::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\AnalyzerInterface::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer::__construct() has parameter $suspiciousPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer::performDeepScan() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 214, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer::analyzeEncoding() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'line' => 406, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 406, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'line' => 438, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 438, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::__construct() has parameter $injectionPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::__construct() has parameter $requiredSecurityAttributes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::__construct() has parameter $suspiciousCookieNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::checkForInjections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 352, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 352, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::analyzeSecurityCompliance() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 494, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 494, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::analyzeCookieTampering() has parameter $cookies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 535, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::analyzeCookieTampering() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 535, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 543, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 543, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 624, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 624, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 645, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 645, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'line' => 680, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 680, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::__construct() has parameter $allowedMimeTypes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::__construct() has parameter $dangerousExtensions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::__construct() has parameter $suspiciousPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::analyzeIndividualFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Regex pattern is invalid: Unknown modifier \']\' in pattern: /(?:\\.\\.[\\\\/])|(?:[\\\\/]\\.\\.)|(?:\\.\\.\\\\\\\\)|(?:\\\\\\\\\\.\\.)|(?:%2e%2e%2f)|(?:%2e%2e\\\\\\\\)|(?:\\.\\.%2f)|(?:\\.\\.%5c)|(?:%2e%2e%5c)/', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 277, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 277, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'regexp.pattern', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::analyzeFileContent() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 399, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 399, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 579, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 579, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 600, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 600, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'line' => 635, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 635, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer::__construct() has parameter $forbiddenHeaders with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer::__construct() has parameter $requiredHeaders with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer::__construct() has parameter $suspiciousHeaders with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $findings in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 241, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 241, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between *NEVER* and 1 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 245, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 245, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 263, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::__construct() has parameter $injectionPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::__construct() has parameter $suspiciousPropertyNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $depth of function json_decode expects int<1, max>, int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeJsonStructure() has parameter $jsonData with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeJsonStructure() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeJsonElement() has parameter $element with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeJsonElement() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 297, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with mixed will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 327, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 327, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.impossibleType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 327, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 327, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_object() with object will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 329, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 329, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::isAssociativeArray() has parameter $array with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 356, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 356, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::checkForInjections() has parameter $jsonData with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::checkForInjections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_match expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 375, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeSuspiciousProperties() has parameter $jsonData with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 400, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 400, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeSuspiciousProperties() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 400, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 400, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::checkPrototypePollution() has parameter $jsonData with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 423, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 423, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::checkPrototypePollution() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 423, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 423, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::traverseJsonForProperties() has parameter $data with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 451, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 451, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::checkJsonBombing() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 489, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 489, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::analyzeJsonEncoding() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 535, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 577, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 577, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 598, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 598, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'line' => 633, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 633, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::__construct() has parameter $injectionPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::__construct() has parameter $suspiciousParameterNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::checkForInjections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 337, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::analyzeParameterPatterns() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 394, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 394, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::analyzeParameterPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 394, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 394, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 464, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 464, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 485, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 485, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'line' => 519, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 519, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::__construct() has parameter $adminPathIndicators with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::__construct() has parameter $debugPathIndicators with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::__construct() has parameter $suspiciousFileExtensions with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::__construct() has parameter $suspiciousPathPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Waf\\DetectionSeverity::MEDIUM and App\\Framework\\Waf\\DetectionSeverity::LOW will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between App\\Framework\\Waf\\DetectionSeverity::MEDIUM and App\\Framework\\Waf\\DetectionSeverity::LOW will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::analyzePathStructure() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $segment in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 302, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::checkSuspiciousPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 349, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::analyzeEncoding() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 380, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 380, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::analyzeFileExtension() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 462, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 462, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::analyzeUnicodeThreats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 505, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 505, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 557, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 557, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 578, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 578, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'line' => 614, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 614, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::__construct() has parameter $dangerousEntityPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::__construct() has parameter $injectionPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::__construct() has parameter $suspiciousElementNames with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::parseXmlSecurely() never returns null so it can be removed from the return type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\MethodReturnStatementsNode', 'identifier' => 'return.unusedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::checkDangerousEntities() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 278, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::analyzeXmlStructure() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 309, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 309, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::analyzeXmlNode() has parameter $node with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 375, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::analyzeXmlNode() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 375, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::checkForInjections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 427, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 427, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type DOMNodeList|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 437, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 437, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot access property $nodeName on DOMNode|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 439, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 439, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $content of method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::checkContentForInjections() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 439, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 439, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type DOMNodeList|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 444, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 444, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property DOMNode::$name.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 446, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 446, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $content of method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::checkContentForInjections() expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 446, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 446, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::checkContentForInjections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 456, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 456, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::analyzeSuspiciousElements() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 489, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 489, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Argument of an invalid type DOMNodeList|false supplied for foreach, only iterables are supported.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 498, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 498, 'nodeType' => 'PHPStan\\Node\\InForeachNode', 'identifier' => 'foreach.nonIterable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::checkXmlBombing() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 515, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 515, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::analyzeXmlEncoding() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 558, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 558, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::getMaxSeverityFromFindings() has parameter $findings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 612, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 612, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 633, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 633, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'line' => 671, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 671, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::__construct() has parameter $cookies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::__construct() has parameter $files with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::__construct() has parameter $postParameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::__construct() has parameter $queryParameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::fromArray() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Http\\IpAddress::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::minimal() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 86, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::getAllParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::getFile() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::getFileNames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 254, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 254, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 286, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::toAnalysisArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 307, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 307, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 320, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 340, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 340, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 353, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotDetectionType::getDefaultSeverity() has invalid return type App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant HIGH on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant MEDIUM on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant LOW on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotDetectionType::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotDetectionType::getBySeverity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $severity of method App\\Framework\\Waf\\BotProtection\\BotDetectionType::getBySeverity() has invalid type App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::__construct() has parameter $detectionHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::__construct() has parameter $performanceMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::analyzeRequest() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method isSuspicious() on an unknown class App\\Framework\\Waf\\BotProtection\\BehavioralAnalysisResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getDetections() on an unknown class App\\Framework\\Waf\\BotProtection\\BehavioralAnalysisResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getRiskScore() on an unknown class App\\Framework\\Waf\\BotProtection\\BehavioralAnalysisResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::detectFingerprint() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::analyzeBehavior() has invalid return type App\\Framework\\Waf\\BotProtection\\BehavioralAnalysisResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 165, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::analyzeBehavior() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 165, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::analyzeBehavior() should return App\\Framework\\Waf\\BotProtection\\BehavioralAnalysisResult but returns App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::analyzeDevice() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::calculateBotRiskScore() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::calculateBotRiskScore() has parameter $riskFactors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::shouldRequireCaptcha() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 215, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::validateCaptcha() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::validateCaptcha() should return bool but returns App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::validateResponse() invoked with 2 parameters, 3 required.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'arguments.count', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $challengeId of method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::validateResponse() expects string, App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $response of method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::validateResponse() expects string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 238, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::createFingerprintDetection() has invalid return type App\\Framework\\Waf\\BotProtection\\BotDetection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Waf\\BotProtection\\BotDetection not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 246, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant HIGH on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant MEDIUM on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 248, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::createDeviceDetection() has invalid return type App\\Framework\\Waf\\BotProtection\\BotDetection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 259, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Waf\\BotProtection\\BotDetection not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 261, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant HIGH on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 263, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant MEDIUM on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 263, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 263, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::createCaptchaFailureDetection() has invalid return type App\\Framework\\Waf\\BotProtection\\BotDetection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Waf\\BotProtection\\BotDetection not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 276, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant HIGH on an unknown class App\\Framework\\Waf\\BotProtection\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 278, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 278, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::calculateConfidence() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::calculateConfidence() has parameter $riskFactors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 289, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Waf\\BotProtection\\BotDetection not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 300, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 300, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $confidence on an unknown class App\\Framework\\Waf\\BotProtection\\BotDetection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 301, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::calculateRiskConfidence() has parameter $riskFactors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::calculateRiskScoreVariance() has parameter $riskFactors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 338, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 338, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::getClientIdentifier() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 353, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::getRecentDetections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 365, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 365, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 367, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 367, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::recordDetection() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 378, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 378, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 381, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 381, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 391, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 415, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 415, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::getPerformanceStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 429, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 429, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\BotProtectionEngine::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'line' => 478, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 478, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::__construct() has parameter $activeChallenges with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::generateChallenge() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 42, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::addSeconds().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 50, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 50, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Cache\\CacheKey given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 ...$items of method App\\Framework\\Cache\\Cache::set() expects App\\Framework\\Cache\\CacheItem, App\\Framework\\Core\\ValueObjects\\Duration given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::validateWithProvider() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\HttpClient\\HttpClient::post().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::normalizeProviderResponse() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::normalizeProviderResponse() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'If condition is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 261, 'nodeType' => 'PhpParser\\Node\\Stmt\\If_', 'identifier' => 'if.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $data of static method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaChallenge::fromArray() expects array, App\\Framework\\Cache\\CacheResult given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 262, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 262, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 265, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 265, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Cache\\Cache::delete().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 274, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 274, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 282, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 282, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 306, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 322, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\CaptchaValidator::getSupportedProviders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'line' => 345, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 345, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::__construct() has parameter $behaviorPatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::__construct() has parameter $sessionData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::__construct() has parameter $timingThresholds with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeBehavior() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::getSessionId() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::updateSessionData() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 159, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 159, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeRequestTiming() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeRequestTiming() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeMouseMovement() has parameter $movements with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 270, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeMouseMovement() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 270, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 270, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeKeystrokePatterns() has parameter $keystrokes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 344, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeKeystrokePatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 344, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 344, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::analyzeNavigationPatterns() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 402, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between int<3, max> and 0 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 442, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 442, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::calculateBehavioralRiskScore() has parameter $behaviorMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 467, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 467, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::calculateBehavioralRiskScore() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 467, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 467, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::calculateAnalysisConfidence() has parameter $behaviorMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 497, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 497, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::calculateAnalysisConfidence() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 497, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 497, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::isPerfectLine() has parameter $point1 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 523, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 523, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::isPerfectLine() has parameter $point2 with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 523, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 523, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::calculateVariance() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 533, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 533, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 584, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 584, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'line' => 638, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 638, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::__construct() has parameter $devicePatterns with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::__construct() has parameter $deviceProfileCache with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::__construct() has parameter $suspiciousDevices with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::analyzeDevice() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 62, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 62, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::extractDeviceData() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::extractDeviceData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::detectVirtualMachine() has parameter $deviceInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 230, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 230, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::detectHeadlessBrowser() has parameter $deviceInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 256, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::detectWebDriver() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 281, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::detectWebDriver() has parameter $deviceInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 281, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::analyzeUserAgentConsistency() has parameter $deviceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 302, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::analyzeHardwareConsistency() has parameter $deviceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 311, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::checkAgainstKnownPatterns() has parameter $deviceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 320, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 320, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::matchesPattern() has parameter $deviceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 332, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::matchesPattern() has parameter $pattern with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 332, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 332, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::trackSuspiciousDevice() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 346, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 346, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 352, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 352, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 359, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::generateProfileCacheKey() has parameter $deviceData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 408, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 408, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 410, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 410, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 418, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 418, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 441, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 441, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector::getSuspiciousDevices() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'line' => 455, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 455, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::__construct() has parameter $fingerprintCache with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::__construct() has parameter $knownBotFingerprints with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::analyzeFingerprint() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::extractFingerprintData() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::extractFingerprintData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::generateCacheKey() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::addKnownBotFingerprint() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 201, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult::__construct() has parameter $behaviorMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult::__construct() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult::getDetections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetection::__construct() has parameter $evidence with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 26, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetection::$timestamp is already assigned.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'assign.readOnlyProperty', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 73, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult::__construct() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult::__construct() has parameter $riskFactors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult::getDetectionTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult::getHighConfidenceDetections() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 145, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotRiskScore::__construct() has parameter $factors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotRiskScore::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $anomalousFeatures with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $audioFingerprint with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $canvasFingerprint with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $fontList with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $pluginList with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $screenResolution with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $timezoneInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::__construct() has parameter $webglFingerprint with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::fromData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::getAnomalousFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::extractFeatures() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::extractFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 138, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::detectAnomalies() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 154, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::detectAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 154, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::calculateAnomalyScore() has parameter $anomalies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::calculateAnomalyScore() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 188, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 188, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::generateHash() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $data of function hash expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 232, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 232, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaChallenge::__construct() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaChallenge::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaChallenge::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 210, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult::__construct() has parameter $errorCodes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::__construct() has parameter $characteristics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::__construct() has parameter $connectionType with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::__construct() has parameter $hardwareSpecs with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::__construct() has parameter $locationData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::__construct() has parameter $networkInfo with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::__construct() has parameter $suspiciousFeatures with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::fromData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::getSuspiciousFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::extractCharacteristics() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::extractCharacteristics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 142, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::detectSuspiciousFeatures() has parameter $characteristics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::detectSuspiciousFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 166, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::calculateSuspicionScore() has parameter $characteristics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 210, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::calculateSuspicionScore() has parameter $suspiciousFeatures with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 210, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::generateDeviceId() has parameter $characteristics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 258, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionCategory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\DetectionCategory::getRelatedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionCategory.php', 'line' => 197, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionCategory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 197, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'correct_detection\'|\'false_negative\'|\'false_positive\'|\'severity_adjustment\' on array{false_positive: int<0, max>, false_negative: int<0, max>, correct_detection: int<0, max>, severity_adjustment: int<0, max>} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator::analyzefalsePositivePatterns() has parameter $falsePositives with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 316, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 316, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator::analyzeFalseNegativePatterns() has parameter $falseNegatives with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 373, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator::analyzeSeverityAdjustmentPatterns() has parameter $severityAdjustments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 430, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 430, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator::calculateMovingAverages() has parameter $trendData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 482, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 482, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator::calculateAccuracyTrend() has parameter $trendData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 520, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 520, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 535, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator::calculateDetectionRateTrend() has parameter $trendData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 549, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 549, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between (array|float|int) and 0 results in an error.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 564, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 564, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.invalid', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $subject of function preg_split expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 587, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 587, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array of function array_filter expects array, list|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'line' => 591, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 591, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand extends unknown class App\\Framework\\Console\\Command.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 15, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 15, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::__construct() calls parent::__construct() but App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand does not extend any class.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'class.noParent', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::setDescription().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant OPTION_VALUE_REQUIRED on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::addOption().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 32, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant OPTION_VALUE_REQUIRED on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::addOption().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant OPTION_VALUE_NONE on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::addOption().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant OPTION_VALUE_NONE on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::addOption().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 35, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $input of method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::execute() has invalid type App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $output of method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::execute() has invalid type App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getOption() on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 46, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getOption() on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getOption() on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 48, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getOption() on an unknown class App\\Framework\\Console\\Input.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 49, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 53, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant FAILURE on an unknown class App\\Framework\\Console\\Command.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 59, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant FAILURE on an unknown class App\\Framework\\Console\\Command.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 82, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant FAILURE on an unknown class App\\Framework\\Console\\Command.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to constant SUCCESS on an unknown class App\\Framework\\Console\\Command.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $output of method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::outputDetailedResults() has invalid type App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $output of method App\\Framework\\Waf\\Feedback\\Commands\\LearnFromFeedbackCommand::outputDetailedResults() has invalid type App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 122, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 122, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 127, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 127, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 130, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 154, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 170, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 170, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 177, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 177, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 191, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 194, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 206, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method writeln() on an unknown class App\\Framework\\Console\\Output.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method fetchColumn() on PDOStatement|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method fetch() on PDOStatement|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method fetch() on PDOStatement|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 151, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 151, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method fetch() on PDOStatement|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method fetch() on PDOStatement|false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 178, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\DatabaseFeedbackRepository::hydrateFromRow() has parameter $row with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 236, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'line' => 243, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 243, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\DetectionFeedback::falsePositive() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'line' => 41, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 41, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\DetectionFeedback::falseNegative() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\DetectionFeedback::correctDetection() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'line' => 87, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 87, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Feedback\\DetectionFeedback::severityAdjustment() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Timestamp::fromString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\Feedback\\FeedbackService::$clock is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'line' => 26, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ValueObjects\\Detection::$source.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ValueObjects\\Detection::$id.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 220, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ValueObjects\\Detection::$id.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ValueObjects\\Detection::$id.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 236, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ValueObjects\\Detection::$id.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 244, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $id on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $id on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $category on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $message on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $timestamp on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 109, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $id on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 114, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'PHPDoc tag @var for variable $processedDetections contains unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 137, 'nodeType' => 'PhpParser\\Node\\Stmt\\Expression', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getThreatScore() on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $id on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ThreatAssessment::$threatScore.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 255, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\ThreatAssessment::$threatScore.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\LayerResult::threat() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\LayerResult::suspicious() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\LayerStatus::SUSPICIOUS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 120, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 135, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 164, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 164, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-empty-string, 1?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-empty-string, 1?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 218, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-empty-string, 1?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 222, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 226, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\CommandInjectionLayer::analyzeRiskFactors() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 353, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 392, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 392, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 397, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 397, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 402, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 402, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\CommandInjectionLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 435, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 435, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\CommandInjectionLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'line' => 450, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 450, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $clock in call to App\\Framework\\Waf\\ValueObjects\\LayerConfig constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\LayerStatus::SUSPICIOUS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 123, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::buildRequestContext() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 136, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 136, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::selectRateLimitTier() has parameter $requestContext with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::selectRateLimitTier() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::createRateLimitDetection() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::createRateLimitDetection() has parameter $rateLimitResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::RATE_LIMITING.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 192, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::createSuspiciousPatternDetection() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 211, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::createSuspiciousPatternDetection() has parameter $rateLimitResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 211, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::SUSPICIOUS_BEHAVIOR.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::createAnomalyDetection() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::createAnomalyDetection() has parameter $rateLimitResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 233, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 233, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::ANOMALY.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 236, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::buildThreatMessage() has parameter $rateLimitResult with no type specified.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 261, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 261, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.parameter', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 339, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 339, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 354, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 354, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::RATE_LIMITING.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 357, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 357, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::SUSPICIOUS_BEHAVIOR.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 358, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 358, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::ANOMALY.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 359, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\LayerInterface::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\LayerInterface::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 110, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 124, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 124, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 162, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 205, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 205, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 221, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 325, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 325, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 330, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 330, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 335, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 335, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\PathTraversalLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\PathTraversalLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'line' => 383, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 383, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Request::$path (string) on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.property', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 99, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 105, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 105, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 115, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 165, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 165, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 184, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 184, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 187, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-empty-string, 1: non-empty-string, 2?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 189, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 189, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-empty-string, 1: non-empty-string, 2?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 195, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 195, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 203, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 203, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_put_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 213, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 213, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\SqlInjectionLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\SqlInjectionLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'line' => 288, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 288, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Expression on left side of ?? is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 215, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 215, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.expr', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 218, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 228, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\LayerStatus::SUSPICIOUS.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 247, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 247, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 273, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 281, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 277, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 277, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 277, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 418, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 414, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 424, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 414, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 425, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 414, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 435, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 431, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 440, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 431, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 441, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 431, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer::analyzeUserAgentStructure() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 451, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 451, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 475, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 475, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 480, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 480, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 485, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 485, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 518, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 518, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'line' => 533, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 533, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 119, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_string() with string will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 125, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Right side of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 134, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 134, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.rightAlwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 163, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-falsy-string, 1?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 208, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $details in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset 0 on array{0: non-falsy-string, 1?: non-falsy-string} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 217, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 217, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\ValueObjects\\Detection constructor expects App\\Framework\\Core\\ValueObjects\\Percentage|null, float given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $riskScore in call to App\\Framework\\Waf\\ValueObjects\\Detection constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 223, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 210, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 279, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 279, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\LayerConfig::get().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 289, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 289, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\XssLayer::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 322, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Layers\\XssLayer::getSupportedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 337, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\AnomalyDetectorInterface::getSupportedBehaviorTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\AnomalyDetectorInterface::canAnalyze() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\AnomalyDetectorInterface::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 'line' => 49, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 49, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::__construct() has parameter $baselines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::__construct() has parameter $featureHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::__construct() has parameter $performanceMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::__construct() has parameter $updateTimestamps with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::getBaselinesForBehaviorType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::getBaselineStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 154, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 154, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::createInitialBaseline() has parameter $featureHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 192, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 192, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $createdAt (App\\Framework\\Core\\ValueObjects\\Timestamp) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $identifier (string) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $maximum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $median (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $minimum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $percentiles (array) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sampleCount (int) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $windowSize (App\\Framework\\Core\\ValueObjects\\Duration) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 204, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $sampleSize in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p50 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 209, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p95 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 210, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p99 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 211, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor expects float, App\\Framework\\Core\\ValueObjects\\Percentage given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 204, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::updateExistingBaseline() has parameter $featureHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 225, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::$sampleSize.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 249, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $createdAt (App\\Framework\\Core\\ValueObjects\\Timestamp) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $identifier (string) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $maximum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $median (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $minimum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $percentiles (array) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sampleCount (int) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $windowSize (App\\Framework\\Core\\ValueObjects\\Duration) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $sampleSize in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 256, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p50 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p95 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p99 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 259, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor expects float, App\\Framework\\Core\\ValueObjects\\Percentage given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 260, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 252, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $createdAt (App\\Framework\\Core\\ValueObjects\\Timestamp) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $identifier (string) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $maximum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $median (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $minimum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $percentiles (array) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sampleCount (int) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $windowSize (App\\Framework\\Core\\ValueObjects\\Duration) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 286, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::$sampleSize.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 290, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $sampleSize in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 290, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::$p50.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 291, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p50 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::$p95.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 292, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p95 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::$p99.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 293, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 50 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p99 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 286, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 51 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::calculateStatistics() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 306, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 52 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::calculateStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 306, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 53 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::calculatePercentile() has parameter $sortedValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 338, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 338, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 54 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getValue() on float.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 363, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 363, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 55 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::applySeasonalAdjustment() has parameter $featureHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 56 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::applySeasonalAdjustment() has parameter $stats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 57 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::applySeasonalAdjustment() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 58 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::getBaselineBehaviorTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 475, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 475, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 59 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 492, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 492, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 60 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::getPerformanceMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 507, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 507, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 61 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BaselineManager::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'line' => 515, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 515, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BehaviorType::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BehaviorType::getRealTime() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\BehaviorType::getBatch() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::__construct() has parameter $clusterAssignments with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::__construct() has parameter $clusterCenters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::__construct() has parameter $featureVectors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::$clusterCenters is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::$clusterAssignments is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::canAnalyze() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_numeric() with float will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 67, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature and App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_numeric() with float will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature and App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Result of && is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\BooleanAndNode', 'identifier' => 'booleanAnd.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector::performClustering() should return array{centers: array>, assignments: array, cost: float, iterations: int} but returns array{}.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Array does not have offset \'centers\'.', 'nodeLine' => 180, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'value\' on array{value: float, normalized_value: float, z_score: float, feature: App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 521, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 521, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'normalized_value\' on array{value: float, normalized_value: float, z_score: float, feature: App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 522, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 522, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset \'z_score\' on array{value: float, normalized_value: float, z_score: float, feature: App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature} on left side of ?? always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 523, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 523, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullCoalesce.offset', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature and App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'line' => 701, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 701, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::__construct() has parameter $featureHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::getSupportedBehaviorTypes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::canAnalyze() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 48, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 48, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature and App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::detectZScoreAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 116, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 116, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->mean" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 139, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->standardDeviation" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 140, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 140, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::detectOutliers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::detectTrendAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 222, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 222, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $window of method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::calculateMovingAverage() expects int, float|int given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::detectFrequencySpikes() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 285, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 285, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::detectPatternDeviations() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 321, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::getFeatureHistory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 375, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 375, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::calculateMovingAverage() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 385, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 385, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instanceof between App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature and App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 401, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 401, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'instanceof.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'line' => 407, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 407, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::__construct() has parameter $requestHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractFeatures() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $array (array{App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature, ...}) to function array_filter does not contain falsy values, the array will always stay the same.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'arrayFilter.same', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractRequestRate() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractBurstRate() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractSustainedRate() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 138, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 138, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractInterArrivalVariance() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractRequestSpacing() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 194, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 194, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractPeriodicityScore() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 235, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 235, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractTimeOfDayPattern() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 293, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 308, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 308, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractWeekdayPattern() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 322, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 322, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 337, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractFrequencyEntropy() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 351, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 351, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::extractBurstiness() has parameter $requests with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 382, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 382, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 431, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 431, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 448, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 448, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::getRequestHistory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 459, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 459, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 465, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 465, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::$sessionId.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 479, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 479, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 484, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 484, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::calculateAutocorrelation() has parameter $buckets with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 493, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 493, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and 0 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 512, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 512, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::getFeatureNames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 519, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 519, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 535, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 535, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'line' => 566, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 566, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::__construct() has parameter $parameterHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::__construct() has parameter $pathHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractFeatures() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractPathFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 64, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 64, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractParameterFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractSequenceFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 119, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 119, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractStructureFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 137, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 137, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 ...$arg1 of function max expects non-empty-array, array> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'array> might be empty.', 'nodeLine' => 257, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Comparison operation ">" between int<2, max> and 0 is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 260, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 260, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Greater', 'identifier' => 'greater.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractParameterCount() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 392, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 392, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractParameterComplexity() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 405, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 405, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractParameterEntropy() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 432, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 432, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractParameterValueEntropy() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 520, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 520, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractSuspiciousParameterScore() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 556, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 556, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractInjectionPatternScore() has parameter $parameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 598, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 598, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractPathSequenceEntropy() has parameter $pathHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 635, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 635, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractPathTransitionScore() has parameter $pathHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 656, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 656, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::extractNavigationPattern() has parameter $pathHistory with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 691, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 691, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData::$sessionId.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 847, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 847, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 852, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 852, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::getFeatureNames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 858, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 858, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 879, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 879, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'line' => 910, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 910, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\FeatureExtractorInterface::extractFeatures() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\FeatureExtractorInterface::getFeatureNames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\FeatureExtractorInterface::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\FeatureExtractorInterface::getDependencies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 65, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::__construct() has parameter $baselineCache with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::__construct() has parameter $featureCache with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::__construct() has parameter $performanceMetrics with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::analyzeRequest() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 43, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::extractFeatures() has parameter $context with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::extractFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::detectAnomalies() has parameter $baselines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 183, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::detectAnomalies() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 183, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::detectAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 183, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getBaselines() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getBaselines() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::createBaselineFromFeatures() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 276, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $values in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 284, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 284, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $createdAt (App\\Framework\\Core\\ValueObjects\\Timestamp) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $identifier (string) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $maximum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $median (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $minimum (float) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $percentiles (array) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $sampleCount (int) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Missing parameter $windowSize (App\\Framework\\Core\\ValueObjects\\Duration) in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 297, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.missing', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $sampleSize in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p50 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 302, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p95 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 303, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $p99 in call to App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 304, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $confidence of class App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline constructor expects float, App\\Framework\\Core\\ValueObjects\\Percentage given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 297, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getRelevantBaseline() has parameter $baselines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 313, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 313, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::validateFeatures() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 330, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 330, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::validateFeatures() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 330, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 330, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_numeric() with float will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 337, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::calculateOverallConfidence() has parameter $anomalies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 351, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 351, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::updateModels() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 376, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $category of method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::findDetectorsForCategory() expects App\\Framework\\Waf\\MachineLearning\\DetectionCategory, App\\Framework\\Waf\\DetectionCategory given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 412, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 412, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $category of method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::findDetectorsForCategory() has invalid type App\\Framework\\Waf\\MachineLearning\\DetectionCategory.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 462, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 462, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $category of method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::findDetectorsForCategory() has invalid type App\\Framework\\Waf\\MachineLearning\\DetectionCategory.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 462, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 462, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $value on an unknown class App\\Framework\\Waf\\MachineLearning\\DetectionCategory.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 473, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 473, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::deduplicateAndRankAnomalies() has parameter $anomalies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 531, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 531, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::deduplicateAndRankAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 531, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 531, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\IpAddress::toString().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 564, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 564, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getExtractorResults() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 571, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 571, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getExtractorResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 571, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 571, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getDetectorResults() has parameter $anomalies with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 601, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 601, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getDetectorResults() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 601, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 601, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getBaselineStats() has parameter $baselines with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 631, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 631, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getBaselineStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 631, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 631, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 45 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to an undefined property App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::$sampleSize.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 639, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more: https://phpstan.org/blog/solving-phpstan-access-to-undefined-property', 'nodeLine' => 639, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'property.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 46 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot call method getValue() on float.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 642, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 642, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.nonObject', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 47 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Timestamp::toUnixTimestamp().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 657, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 657, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 48 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getPerformanceStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 672, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 672, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 49 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine::getConfiguration() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'line' => 695, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 695, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::__construct() has parameter $baselineStats with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::__construct() has parameter $detectorResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::__construct() has parameter $extractorResults with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::getAnomaliesByType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 57, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::getFeaturesByBehaviorType() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::getCriticalAnomalies() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::getDetailedReport() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\MachineLearningResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 158, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::__construct() has parameter $evidence with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::__construct() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::create() has parameter $evidence with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::create() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 71, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::geographicAnomaly() has parameter $normalLocations with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::patternDeviation() has parameter $features with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unreachable statement - code above always terminates.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\UnreachableStatementNode', 'identifier' => 'deadCode.unreachable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 301, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 301, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'line' => 326, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 326, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::__construct() has parameter $percentiles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::fromStatistics() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 37, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::updateWith() has parameter $newValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 95, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 231, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 231, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 272, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::calculateVariance() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 295, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 295, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::calculatePercentile() has parameter $sortedValues with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 312, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 312, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::calculateSkewness() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 346, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 346, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline::calculateKurtosis() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'line' => 364, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 364, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 15, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::entropy() has parameter $distribution with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 101, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::statistical() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 228, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 228, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::calculateMedian() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 248, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 248, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset float does not exist on list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 255, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset float does not exist on list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 255, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 255, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Offset float does not exist on list.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 258, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 258, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrayDimFetch', 'identifier' => 'offsetAccess.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::calculateStandardDeviation() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 264, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 264, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature::calculateVariance() has parameter $values with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 272, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 97, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 'line' => 145, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 145, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\PerformanceService::$timings type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\PerformanceService::$metrics type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $config of method App\\Framework\\Waf\\PerformanceService::__construct() has invalid type App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\PerformanceService::$config has unknown class App\\Framework\\Waf\\WafConfig as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 21, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 21, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\PerformanceService::getAllTimings() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 67, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 67, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\PerformanceService::getMetric() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 103, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 103, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $globalTimeout on an unknown class App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 156, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 156, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $globalTimeout on an unknown class App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using === between float and 0 will always evaluate to false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 183, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 183, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Identical', 'identifier' => 'identical.alwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $globalTimeout on an unknown class App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 200, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\PerformanceService::getWarnings() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $globalTimeout on an unknown class App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 212, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 212, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $globalTimeout on an unknown class App\\Framework\\Waf\\WafConfig.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 216, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\PerformanceService::getSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'line' => 246, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 246, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getAllRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getSqlInjectionRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::sql().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::sql().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::sql().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 75, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::sql().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getXssRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 108, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $number of static method App\\Framework\\Waf\\ValueObjects\\RuleId::xss() expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 113, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 113, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $number of static method App\\Framework\\Waf\\ValueObjects\\RuleId::xss() expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $number of static method App\\Framework\\Waf\\ValueObjects\\RuleId::xss() expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 143, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 143, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $number of static method App\\Framework\\Waf\\ValueObjects\\RuleId::xss() expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getPathTraversalRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::pathTraversal().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 181, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::pathTraversal().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getCommandInjectionRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 214, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 214, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::commandInjection().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 219, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 219, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::commandInjection().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 234, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getFileUploadRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 252, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 252, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 257, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 257, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::FILE_UPLOAD_ABUSE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 260, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 260, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 273, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::FILE_UPLOAD_ABUSE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 276, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 276, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getUserAgentRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 291, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 291, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 296, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 296, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::BOT_DETECTION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 299, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 311, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 311, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::BOT_DETECTION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 314, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 314, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getHttpProtocolRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 329, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 329, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 334, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 334, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 29 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::PROTOCOL_ATTACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 337, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 30 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 349, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 349, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 31 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::PROTOCOL_ATTACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 352, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 352, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 32 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getApplicationAttackRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 368, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 368, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 33 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 373, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 373, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 34 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::INJECTION_ATTACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 376, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 376, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 35 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 388, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 388, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 36 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::INJECTION_ATTACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 391, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 391, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 37 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getGenericAttackRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 406, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 406, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 38 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 411, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 411, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 39 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::PROTOCOL_ATTACK.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 414, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 414, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 40 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 426, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 426, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 41 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::EVASION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 429, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 429, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 42 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getOwaspTop10Rules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 444, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 444, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 43 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getCriticalRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 455, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 455, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 44 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\OWASPCoreRuleSet::getHighPriorityRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'line' => 466, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 466, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\Rule::__construct() has parameter $actionParameters with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\Rule::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\Rule::__construct() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::sql().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 44, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 44, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $number of static method App\\Framework\\Waf\\ValueObjects\\RuleId::xss() expects int, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::pathTraversal().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 88, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::commandInjection().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 110, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 110, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::BOT_DETECTION.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 135, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 135, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Waf\\ValueObjects\\RuleId::generic().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 157, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to undefined constant App\\Framework\\Waf\\DetectionCategory::FILE_UPLOAD_ABUSE.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 160, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 160, 'nodeType' => 'PhpParser\\Node\\Expr\\ClassConstFetch', 'identifier' => 'classConstant.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\Rule::evaluate() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 180, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 180, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\Rule::withTags() has parameter $tags with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 315, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 315, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\Rule::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'line' => 390, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 390, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleAction.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleAction::getRequiredParameters() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleAction.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleAction.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\Rules\\RuleEngine::$rules type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\Rules\\RuleEngine::$rulesByCategory type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\Rules\\RuleEngine::$rulesByPriority type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\Rules\\RuleEngine::$evaluationStats type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::addRules() has parameter $rules with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 59, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 59, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::getRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 125, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 125, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::getEnabledRules() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 133, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::getRulesByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::getRulesByTag() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 149, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 149, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::evaluateAll() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 176, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::evaluateCategories() has parameter $categories with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::evaluateCategories() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::quickEvaluate() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 292, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 292, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::getStatistics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 337, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEngine::getPerformanceMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'line' => 366, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 366, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::__construct() has parameter $errors with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::__construct() has parameter $matches with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getMatchesBySeverity() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getCriticalMatches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getHighSeverityMatches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 66, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getBlockingMatches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getAlertingMatches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 85, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getOwaspTop10Matches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 96, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 96, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getMatchesByCategory() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getMatchedCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 162, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 162, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getMatchedRuleIds() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 176, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 176, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::getPerformanceSummary() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 250, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 250, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\RuleEvaluationResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'line' => 273, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 273, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition::extractValue() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'line' => 171, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 171, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition::evaluate() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'line' => 198, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 198, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition::getMatches() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition::getMatches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'line' => 216, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 216, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'line' => 269, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 269, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition::applyTransformation() should return string but returns string|null.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 287, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::__construct() has parameter $matches with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::fromCondition() has parameter $requestData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::highConfidence() has parameter $matches with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 75, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 75, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::getMatchExcerpt() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 123, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 123, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $offset of function substr expects int, float|int<0, max> given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 132, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::getOwaspInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 187, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::getPerformanceMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 200, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 200, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::withMetadata() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 220, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 220, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 240, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch::calculateConfidence() has parameter $matches with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'line' => 264, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 264, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RulePattern::getAllMatches() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php', 'line' => 132, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 132, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\Rules\\ValueObjects\\RulePattern::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php', 'line' => 249, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 249, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 79, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ThreatAssessment::getThreatCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 150, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 150, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $category on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $category on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $severity of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::filterBySeverity() expects App\\Framework\\Waf\\ValueObjects\\DetectionSeverity, App\\Framework\\Waf\\DetectionSeverity given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 166, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 166, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $category of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::filterByCategory() expects App\\Framework\\Waf\\ValueObjects\\DetectionCategory, App\\Framework\\Waf\\DetectionCategory given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 174, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::filter().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 182, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 182, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::filter().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ThreatAssessment::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 238, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 238, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getThreatScore() on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 272, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 272, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 305, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 305, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 306, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 306, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method isOwaspTop10() on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 321, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 321, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 337, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 337, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $confidence on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 358, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 358, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $confidence on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'line' => 359, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 359, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\ThreatAssessmentService::$clock is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ThreatAssessmentService::getSeverityWeight() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ThreatAssessmentService::mapAnomalyScoreToSeverity() is unused.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassMethodsNode', 'identifier' => 'method.unused', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\AdditionalContext::__construct() has parameter $customData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\AdditionalContext::withCustomData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 58, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\AdditionalContext::addCustomData() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'line' => 208, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 208, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\AdditionalContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'line' => 239, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 239, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\BusinessContext::__construct() has parameter $businessRules with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\BusinessContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\Detection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 'line' => 229, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 229, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Waf\\ValueObjects\\DetectionCollection implements generic interface IteratorAggregate but does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detections of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::__construct() has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Waf\\ValueObjects\\DetectionCollection::$detections has unknown class App\\Framework\\Waf\\Detection as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::single() has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 31, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::fromArray() has parameter $detections with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 39, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Waf\\Detection not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\Instanceof_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detection of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::add() has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $severity of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::filterBySeverity() has invalid type App\\Framework\\Waf\\ValueObjects\\DetectionSeverity.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 94, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detection of anonymous function has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrowFunction', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $category of method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::filterByCategory() has invalid type App\\Framework\\Waf\\ValueObjects\\DetectionCategory.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 107, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 107, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $category on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detection of anonymous function has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 111, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 111, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrowFunction', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getHighestSeverity() has invalid return type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 120, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 120, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 128, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 128, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getCategories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $category on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detection of anonymous function has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 142, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 142, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrowFunction', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 152, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 152, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method toArray() on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $detection of anonymous function has invalid type App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\ArrowFunction', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\DetectionCollection::getIterator() return type with generic class ArrayIterator does not specify its types: TKey, TValue', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.generics', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\GeographicContext::fromGeoIp() has parameter $geoData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 52, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Left side of || is always false.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'line' => 82, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 82, 'nodeType' => 'PHPStan\\Node\\BooleanOrNode', 'identifier' => 'booleanOr.leftAlwaysFalse', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access on non-nullable type App\\Framework\\Core\\ValueObjects\\Coordinates. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafePropertyFetch', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access on non-nullable type App\\Framework\\Core\\ValueObjects\\Coordinates. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'line' => 84, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 84, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafePropertyFetch', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\GeographicContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'line' => 163, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 163, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerConfig::__construct() has parameter $customSettings with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerConfig::validate() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 'line' => 253, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 253, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerConfig::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 'line' => 287, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 287, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerMetrics::__construct() has parameter $categoryCounts with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerMetrics::__construct() has parameter $severityCounts with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isLessThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 146, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 146, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isLessThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::isGreaterThan().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 158, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerMetrics::updateCategoryCounts() has parameter $categoryCounts with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 254, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 254, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Core\\ValueObjects\\Duration::divide().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 293, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 293, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\LayerMetrics::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 299, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #3 $subject of function str_replace expects array|string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', 'line' => 100, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 100, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function trim expects string, string|null given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 106, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\PayloadSample::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', 'line' => 234, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 234, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\RequestContext::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\RequestContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\ResultMetadata::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RuleId.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\RuleId::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RuleId.php', 'line' => 244, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RuleId.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 244, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\SessionContext::__construct() has parameter $roles with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\SessionContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/TechnicalContext.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\ValueObjects\\TechnicalContext::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/TechnicalContext.php', 'line' => 22, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/TechnicalContext.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 22, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\WafDecision::__construct() has parameter $metadata with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 43, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 43, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 60, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 76, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 92, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 108, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 108, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\WafDecision::getPerformanceMetrics() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 178, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 178, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\WafDecision::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 191, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 191, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Waf\\WafDecision::generateMetadata() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'line' => 315, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 315, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method getThreatScore() on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 89, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Access to property $severity on an unknown class App\\Framework\\Waf\\Detection.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 'line' => 95, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 95, 'nodeType' => 'PhpParser\\Node\\Expr\\PropertyFetch', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Webhook\\Events\\WebhookFailed implements unknown interface App\\Framework\\Events\\DomainEvent.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'line' => 16, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'interface.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookFailed::__construct() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'line' => 18, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 18, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 27, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookFailed::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 90, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Webhook\\Events\\WebhookReceived implements unknown interface App\\Framework\\Events\\DomainEvent.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'line' => 16, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 16, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'interface.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookReceived::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 54, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookReceived::getData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'line' => 71, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 71, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Class App\\Framework\\Webhook\\Events\\WebhookSent implements unknown interface App\\Framework\\Events\\DomainEvent.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'line' => 14, 'canBeIgnored' => false, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 14, 'nodeType' => 'PhpParser\\Node\\Stmt\\Class_', 'identifier' => 'interface.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookSent::__construct() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookSent::create() has parameter $payload with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 27, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 38, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Events\\WebhookSent::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'line' => 60, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 60, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $string of function strlen expects string, string|false given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Jobs\\WebhookJob::__construct() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Jobs\\WebhookJob::immediate() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 34, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Jobs\\WebhookJob::delayed() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 56, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 153, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 153, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Jobs\\WebhookJob::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 167, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 179, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Jobs\\WebhookJob::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 186, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 186, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::fromArray().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'line' => 196, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 196, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $environment of method App\\Framework\\Webhook\\Middleware\\WebhookMiddleware::__construct() has invalid type App\\Framework\\Core\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 26, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Webhook\\Middleware\\WebhookMiddleware::$environment has unknown class App\\Framework\\Core\\Environment as its type.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getPath().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\MiddlewareContext::withResponse() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\JsonResponse given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter $request of method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() expects App\\Framework\\Http\\HttpRequest, App\\Framework\\Http\\Request given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\Request::getPath().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 86, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 86, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Http\\JsonResponse not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 94, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 94, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $response of method App\\Framework\\Http\\MiddlewareContext::withResponse() expects App\\Framework\\Http\\Response, App\\Framework\\Http\\JsonResponse given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 101, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 101, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Middleware\\WebhookMiddleware::getWebhookConfig() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 141, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 141, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to method get() on an unknown class App\\Framework\\Core\\Environment.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'line' => 144, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 144, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Strict comparison using !== between App\\Framework\\Cache\\CacheResult and null will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 39, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 39, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\NotIdentical', 'identifier' => 'notIdentical.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheItem::forSetting().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 51, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\IdempotencyService::markProcessed() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 63, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 63, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheItem::forSetting().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 68, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Cache\\CacheItem::forSetting().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\IdempotencyService::getStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 97, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 97, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access on non-nullable type App\\Framework\\Cache\\CacheResult. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 102, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 102, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafePropertyFetch', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\IdempotencyService::getProviderStatus() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 148, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\IdempotencyService::createIdempotencyData() has parameter $result with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\IdempotencyService::createIdempotencyData() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 168, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 168, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Instantiated class App\\Framework\\Exception\\WebhookException not found.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Throwing object of an unknown class App\\Framework\\Exception\\WebhookException.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 'line' => 31, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 'traitFilePath' => NULL, 'tip' => 'Learn more at https://phpstan.org/user-guide/discovering-symbols', 'nodeLine' => 31, 'nodeType' => 'PhpParser\\Node\\Expr\\Throw_', 'identifier' => 'class.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() has parameter $allowedEvents with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Framework\\Http\\HttpRequest::getRawBody().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe method call on non-nullable type App\\Framework\\UserAgent\\UserAgent. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 54, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 54, 'nodeType' => 'PhpParser\\Node\\Expr\\NullsafeMethodCall', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Router\\Result\\JsonResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 57, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 57, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::fromRaw().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 61, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Router\\Result\\JsonResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 73, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 73, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Router\\Result\\JsonResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 85, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 85, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 115, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 115, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Router\\Result\\JsonResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 118, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 118, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Webhook\\Events\\WebhookFailed::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 131, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 131, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::handle() should return App\\Framework\\Http\\HttpResponse but returns App\\Framework\\Router\\Result\\JsonResult.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 147, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 147, 'nodeType' => 'PhpParser\\Node\\Stmt\\Return_', 'identifier' => 'return.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #2 $signatureHeader of method App\\Framework\\Webhook\\Security\\SignatureVerifier::verify() expects string, array given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 167, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 167, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 175, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 175, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Processing\\WebhookRequestHandler::successResponse() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 181, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 181, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 187, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 187, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'line' => 201, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 201, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 'line' => 34, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 34, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 56, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Security\\Providers\\StripeSignatureProvider::parseStripeHeader() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Readonly property App\\Framework\\Webhook\\Security\\SignatureVerifier::$providers is assigned outside of the constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\PropertyAssignNode', 'identifier' => 'property.readOnlyAssignNotInConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Security\\SignatureVerifier::getProviderNames() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::send() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 29, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 29, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendAt() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendIn() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 83, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 83, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 91, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendUrgent() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 99, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 99, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendWithRetries() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 114, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 114, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendBulk() has parameter $webhooks with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendBulk() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 130, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 130, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendEvent() has parameter $eventData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::sendEvent() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 157, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 157, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookScheduler::getQueueStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 173, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 173, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'line' => 179, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 179, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookSendResult::__construct() has parameter $responseHeaders with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php', 'line' => 13, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 13, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookSendResult::getJsonResponse() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 77, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\Sending\\WebhookSendResult::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php', 'line' => 109, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 109, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 47, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 47, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Unknown parameter $verifySSL in call to App\\Framework\\HttpClient\\ClientOptions constructor.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'argument.unknown', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Webhook\\Events\\WebhookFailed::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 126, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 126, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function microtime() is forbidden: Use Clock::microtime() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 133, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 133, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Webhook\\Events\\WebhookFailed::create().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 155, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 155, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function sleep() is forbidden: Use Timer::sleep(Duration) instead for testable sleep operations', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 207, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => 'Inject Timer interface via dependency injection for testable timing operations. Use Duration value objects for type-safe timing.', 'nodeLine' => 207, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function time() is forbidden: Use Clock::time() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'line' => 236, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 236, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::__construct() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::__construct() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 16, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::fromRequest() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::fromRequest() has parameter $headers with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 25, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 25, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::create() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 36, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 36, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined static method App\\Framework\\Core\\ValueObjects\\Hash::random().', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 66, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 66, 'nodeType' => 'PhpParser\\Node\\Expr\\StaticCall', 'identifier' => 'staticMethod.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::jsonSerialize() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Framework\\Webhook\\ValueObjects\\WebhookPayload::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Worker\\Worker::$processedJobHashes type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\ClassPropertyNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between App\\Domain\\AI\\AiProvider::OLLAMA and App\\Domain\\AI\\AiProvider::OLLAMA is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'line' => 37, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 28, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Match arm comparison between App\\Domain\\AI\\AiProvider::OLLAMA and App\\Domain\\AI\\AiProvider::OLLAMA is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'line' => 56, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'traitFilePath' => NULL, 'tip' => 'Remove remaining cases below this one and this error will disappear too.', 'nodeLine' => 47, 'nodeType' => 'PHPStan\\Node\\MatchExpressionNode', 'identifier' => 'match.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiHandlerFactory::getAvailableModels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiHandlerFactory::getOllamaAvailableModels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 121, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiService::query() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'line' => 20, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 20, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiService::queryWithFallback() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiService::queryWithConversation() has parameter $messages with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiService::getAvailableProviders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 74, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiService::getAvailableModels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\AiService::getOllamaAvailableModels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'line' => 89, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 89, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\AI\\Ollama\\OllamaQueryHandler::getAvailableModels() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 55, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\GitHubClient::sendRequest() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\GitHubClient)', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\GitHubClient::formatErrorMessage() has parameter $responseData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\GitHubClient)', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\GitHubClient::decodeJson() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\GitHubClient)', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\GitHubClient::getUserRepositories() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'line' => 38, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 38, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\GitHubClient::createRepository() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'line' => 51, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 51, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\GitHubClient::getRepository() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 69, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\BlacklistService::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\BlacklistService::add() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Commands\\CreateRecipientCommand::__construct() has parameter $customFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php', 'line' => 11, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 11, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Commands\\CreateRecipientCommand::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Commands\\UpdateRecipientCommand::__construct() has parameter $customFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php', 'line' => 12, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 12, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Commands\\UpdateRecipientCommand::toArray() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php', 'line' => 35, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 35, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Infrastructure\\Api\\RapidMail\\RecipientListId via private constructor App\\Infrastructure\\Api\\RapidMail\\RecipientListId::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'line' => 70, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 70, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Infrastructure\\Api\\RapidMail\\RecipientListId via private constructor App\\Infrastructure\\Api\\RapidMail\\RecipientListId::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'line' => 121, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 121, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Cannot instantiate class App\\Infrastructure\\Api\\RapidMail\\RecipientListId via private constructor App\\Infrastructure\\Api\\RapidMail\\RecipientListId::__construct().', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'line' => 148, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 148, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => 'new.privateConstructor', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Infrastructure\\Api\\RapidMail\\RecipientService::getById().', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to an undefined method App\\Infrastructure\\Api\\RapidMail\\RecipientService::searchLegacy().', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'line' => 240, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 240, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'method.notFound', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Factories\\RecipientCommandFactory::createFromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Factories\\RecipientCommandFactory::updateFromRecipientWithChanges() has parameter $changes with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 'line' => 61, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 61, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Mailing::__construct() has parameter $links with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php', 'line' => 9, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 9, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\Mailing::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 23, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\MailingService::getAll() has parameter $filter with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\MailingService::getAll() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\MailingService::getAllWithPagination() has parameter $filter with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\MailingService::getAllWithPagination() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\MailingService::send() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'line' => 79, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 79, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::request() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::request() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::request() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::sendRawRequest() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::sendRawRequest() has parameter $queryParams with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 46, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 46, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::getDefaultQueryParams() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::handleResponse() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 92, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 92, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient::formatErrorMessage() has parameter $responseData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'line' => 129, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 129, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient::__construct() has parameter $customFields with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient::__construct() has parameter $links with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 17, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 17, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 74, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 74, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'line' => 77, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 77, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList::__construct() has parameter $links with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'line' => 14, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 14, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList::fromArray() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'line' => 30, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 30, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'line' => 42, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 42, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use App\\Framework\\DateTime\\DateTime instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of DateTimeImmutable is forbidden: Use Clock::now() or Clock::fromString() instead for testable time handling', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'line' => 45, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 'traitFilePath' => NULL, 'tip' => 'Use Clock interface or Framework DateTime abstractions via dependency injection', 'nodeLine' => 45, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\RecipientService::search() has parameter $filter with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', 'line' => 76, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 76, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\StatisticsService::getMailingStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 19, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\StatisticsService::getClickStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 'line' => 32, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 32, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMail\\StatisticsService::getOpenStats() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 'line' => 40, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 40, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMailClient::sendRequest() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\RapidMailClient)', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMailClient::formatErrorMessage() has parameter $responseData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\RapidMailClient)', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMailClient::decodeJson() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\RapidMailClient)', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMailClient::addRecipient() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 33, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMailClient::getRecipientLists() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\RapidMailClient::searchRecipients() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'line' => 81, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 81, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::sendRequest() has parameter $data with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\ShopifyClient)', 'line' => 24, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 24, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::formatErrorMessage() has parameter $responseData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\ShopifyClient)', 'line' => 68, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 68, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::decodeJson() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php (in context of class App\\Infrastructure\\Api\\ShopifyClient)', 'line' => 91, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php', 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 91, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 3 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Infrastructure\\Api\\ShopifyClient::$apiVersion is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 19, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 15, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 4 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getProducts() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 5 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getProducts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 53, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 53, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 6 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getProduct() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 72, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 72, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 7 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createProduct() has parameter $productData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 8 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createProduct() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 88, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 88, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 9 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::updateProduct() has parameter $productData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 10 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::updateProduct() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 106, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 106, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 11 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getOrders() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 12 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getOrders() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 139, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 139, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 13 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getOrder() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 158, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 158, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 14 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createOrder() has parameter $orderData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 15 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createOrder() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 174, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 174, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 16 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getShopInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 190, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 17 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getCustomers() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 18 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getCustomers() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 206, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 206, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 19 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createCustomer() has parameter $customerData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 225, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 20 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createCustomer() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 225, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 225, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 21 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getCustomer() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 242, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 242, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 22 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::createWebhook() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 260, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 260, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 23 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getWebhooks() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 282, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 282, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 24 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::searchProducts() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 299, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 25 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::searchProducts() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 299, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 299, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 26 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getMetafields() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 319, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 319, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 27 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::getRateLimitInfo() return type has no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 335, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 335, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 28 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\Api\\ShopifyClient::buildQueryParams() has parameter $options with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'line' => 353, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 353, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function file_get_contents() is forbidden: Use FileSystem abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Method App\\Infrastructure\\GeoIp\\CountryDataService::parseCountryData() has parameter $countryData with no value type specified in iterable type array.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 'line' => 78, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/blog/solving-phpstan-no-value-type-specified-in-iterable-type', 'nodeLine' => 78, 'nodeType' => 'PHPStan\\Node\\InClassMethodNode', 'identifier' => 'missingType.iterableValue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function date() is forbidden: Use Clock::now()->format() or DateTimeFormatter instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 'line' => 98, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 'traitFilePath' => NULL, 'tip' => 'Inject Clock interface via dependency injection for testable time handling', 'nodeLine' => 98, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->nameDe" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 'line' => 23, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 23, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->nameEn" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 'line' => 28, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 28, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 2 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Using nullsafe property access "?->nameNative" on left side of ?? is unnecessary. Use -> instead.', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 'line' => 33, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 33, 'nodeType' => 'PhpParser\\Node\\Expr\\BinaryOp\\Coalesce', 'identifier' => 'nullsafe.neverNull', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php', 'line' => 55, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 55, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of PDO is forbidden: Use App\\Framework\\Database\\ConnectionInterface instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php', 'line' => 58, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 58, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Function mkdir() is forbidden: Use Directory abstraction instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', 'line' => 90, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 90, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), 1 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Direct instantiation of PDO is forbidden: Use App\\Framework\\Database\\ConnectionInterface instead', 'file' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', 'line' => 93, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', 'traitFilePath' => NULL, 'tip' => 'Use dependency injection to get the framework abstraction', 'nodeLine' => 93, 'nodeType' => 'PhpParser\\Node\\Expr\\New_', 'identifier' => NULL, 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/preload.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $className in empty() always exists and is not falsy.', 'file' => '/home/michael/dev/michaelschiemer/src/preload.php', 'line' => 65, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/preload.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 65, 'nodeType' => 'PhpParser\\Node\\Expr\\Empty_', 'identifier' => 'empty.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), ); }, 'locallyIgnoredErrorsCallback' => static function (): array { return array ( '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Negated boolean expression is always true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'line' => 190, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 190, 'nodeType' => 'PhpParser\\Node\\Expr\\BooleanNot', 'identifier' => 'booleanNot.alwaysTrue', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Call to function is_array() with array will always evaluate to true.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 'line' => 52, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 'traitFilePath' => NULL, 'tip' => 'Because the type is coming from a PHPDoc, you can turn off this check by setting treatPhpDocTypesAsCertain: false in your %configurationFile%.', 'nodeLine' => 52, 'nodeType' => 'PhpParser\\Node\\Expr\\FuncCall', 'identifier' => 'function.alreadyNarrowedType', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Property App\\Framework\\Http\\Session\\FlashManager::$session is never read, only written.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 'line' => 27, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 'traitFilePath' => NULL, 'tip' => 'See: https://phpstan.org/developing-extensions/always-read-written-properties', 'nodeLine' => 16, 'nodeType' => 'PHPStan\\Node\\ClassPropertiesNode', 'identifier' => 'property.onlyWritten', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Variable $session in isset() always exists and is not nullable.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 'line' => 104, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 104, 'nodeType' => 'PhpParser\\Node\\Expr\\Isset_', 'identifier' => 'isset.variable', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php' => array ( 0 => \PHPStan\Analyser\Error::__set_state(array( 'message' => 'Parameter #1 $class of method App\\Framework\\DI\\DefaultContainer::get() expects class-string, string given.', 'file' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 'line' => 69, 'canBeIgnored' => true, 'filePath' => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 'traitFilePath' => NULL, 'tip' => NULL, 'nodeLine' => 69, 'nodeType' => 'PhpParser\\Node\\Expr\\MethodCall', 'identifier' => 'argument.type', 'metadata' => array ( ), 'fixedErrorDiff' => NULL, )), ), ); }, 'linesToIgnore' => array ( ), 'unmatchedLineIgnores' => array ( ), 'collectedDataCallback' => static function (): array { return array ( '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\CacheMetricsController', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Admin\\CacheMetricsController', 1 => 'getHealthStatus', 2 => 'App\\Application\\Admin\\CacheMetricsController', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 207, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\Dashboard', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 77, ), 1 => array ( 0 => 'sort', 1 => 100, ), 2 => array ( 0 => 'usort', 1 => 158, ), 3 => array ( 0 => 'ob_start', 1 => 176, ), 4 => array ( 0 => 'phpinfo', 1 => 177, ), 5 => array ( 0 => 'preg_match', 1 => 181, ), 6 => array ( 0 => 'sort', 1 => 351, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\HealthController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\LogViewerController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/RoutesViewModel.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\RoutesViewModel', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\ShowDiscovery', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\ShowImageManager', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\ShowImageSlots', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageSlotRepository', ), 1 => 'save', 2 => 72, ), 1 => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageSlotRepository', ), 1 => 'save', 2 => 89, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\ShowImageUpload', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Admin\\ShowRoutes', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 44, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Admin\\StyleguideController', 1 => 'getComponentExamples', 2 => 'App\\Application\\Admin\\StyleguideController', ), 1 => array ( 0 => 'App\\Application\\Admin\\StyleguideController', 1 => 'getColorTokens', 2 => 'App\\Application\\Admin\\StyleguideController', ), 2 => array ( 0 => 'App\\Application\\Admin\\StyleguideController', 1 => 'getSpacingTokens', 2 => 'App\\Application\\Admin\\StyleguideController', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Analytics\\AnalyticsController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsDashboardService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsDashboardService', 1 => 'getTrafficSources', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsDashboardService', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 77, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsRealTimeService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsRealTimeService', 1 => 'getCurrentPageViews', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsRealTimeService', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getEventsCount', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 1 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getTopActions', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 2 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getDeviceBreakdown', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 3 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getBrowserBreakdown', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 4 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getCountryBreakdown', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 5 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getConversions', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 6 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getRevenue', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 7 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getGoalCompletions', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), 8 => array ( 0 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 1 => 'getFunnelData', 2 => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/ActionBreakdown.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 1 => 'getActionCount', 2 => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', ), 1 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 1 => 'toArray', 2 => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', ), 2 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 1 => 'toAnalyticsArray', 2 => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 50, ), 1 => array ( 0 => 'usort', 1 => 62, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BrowserBreakdown.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 1 => 'getTotal', 2 => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', ), 1 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 1 => 'toArray', 2 => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BusinessMetricsReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 1 => 'getTotalRevenue', 2 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', ), 1 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 1 => 'getCurrency', 2 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', ), 2 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 1 => 'getTransactionCount', 2 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', ), 3 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 1 => 'getAverageOrderValue', 2 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', ), 4 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 1 => 'getConversionRate', 2 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', ), 5 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 1 => 'toArray', 2 => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 104, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/CountryBreakdown.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 1 => 'getTotal', 2 => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', ), 1 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 1 => 'getDachRegionTotal', 2 => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', ), 2 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 1 => 'toArray', 2 => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/DeviceBreakdown.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 1 => 'getTotal', 2 => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', ), 1 => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 1 => 'toArray', 2 => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\ApiDocsController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\Images\\ImageApiController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\Images\\ImageSlotController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\MarkdownDocsController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\V1\\UsersController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\V2\\UsersController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Api\\VersionController', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Api\\VersionController', 1 => 'isVersionDeprecated', 2 => 'App\\Application\\Api\\VersionController', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 77, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginUser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Auth\\LoginUser', ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Auth\\ShowLogin', ), ), '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Backend\\RapidMail\\Dashbord', ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContact.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Contact\\StoreContact', ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Contact\\StoreContactHandler', ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Controller\\CsrfController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Controller\\QrCodeTestController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Design\\Controller\\DesignSystemController', ), ), '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\FeatureFlags\\FeatureFlagController', ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\GraphQL\\GraphQLController', ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\GraphQL\\GraphQLSchemaBuilder', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLType', ), 1 => 'addField', 2 => 45, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addType', 2 => 71, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLType', ), 1 => 'addField', 2 => 78, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addType', 2 => 96, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLType', ), 1 => 'addField', 2 => 103, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addType', 2 => 121, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addQuery', 2 => 127, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addQuery', 2 => 143, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addQuery', 2 => 155, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addMutation', 2 => 164, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addMutation', 2 => 176, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => 'addMutation', 2 => 192, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\GraphQL\\UserResolvers', ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\GraphQL\\UserService', 1 => 'findById', 2 => 'App\\Application\\GraphQL\\UserService', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Health\\HealthCheckController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Http\\BatchController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'sendJson', 2 => 27, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'sendJson', 2 => 44, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'sendJson', 2 => 55, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'sendJson', 2 => 59, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'sendJson', 2 => 84, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'sendJson', 2 => 108, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Http\\Controllers\\NotificationController', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', ), 1 => 'addJsonEvent', 2 => 38, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', ), 1 => 'addJsonEvent', 2 => 45, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', ), 1 => 'addJsonEvent', 2 => 72, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', ), 1 => 'addJsonEvent', 2 => 87, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', ), 1 => 'addJsonEvent', 2 => 158, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Http\\Controllers\\QrCodeController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Http\\Examples\\BatchExampleController', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sleep', 1 => 121, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Http\\Smartlink', ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Media\\AdaptiveVideoStream', ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Media\\MediaCleanupService', ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Media\\ShowImage', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'http_response_code', 1 => 66, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Media\\ShowVideo', ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Newsletter\\SignUp\\NewsletterSignup', ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Newsletter\\SignUp\\NewsletterSignupHandler', ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/SignupUserToNewsletter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Newsletter\\SignUp\\SignupUserToNewsletter', ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/UserWasSignedUp.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Newsletter\\SignUp\\UserWasSignedUp', ), ), '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Performance\\Http\\Controller\\PerformanceController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Search\\CreateIndexRequest', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Search\\CreateIndexRequest', 1 => 'toArray', 2 => 'App\\Application\\Search\\CreateIndexRequest', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Search\\SearchController', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'filter', 2 => 48, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'boost', 2 => 53, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'fields', 2 => 58, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'highlight', 2 => 63, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'offset', 2 => 67, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'sortBy', 2 => 72, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'sortByRelevance', 2 => 77, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'fuzzy', 2 => 82, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQueryBuilder', ), 1 => 'minScore', 2 => 86, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Search\\SearchRequest', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Search\\SearchRequest', 1 => 'toArray', 2 => 'App\\Application\\Search\\SearchRequest', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\ExceptionHandlers\\SecurityExceptionHandler', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 41, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 52, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 73, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 83, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\Guards\\AuthenticationGuard', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'session_destroy', 1 => 66, ), 1 => array ( 0 => 'session_regenerate_id', 1 => 83, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 68, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 1 => 'save', 2 => 80, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 86, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 1 => 'save', 2 => 100, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 1 => 'save', 2 => 104, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 111, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 120, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\Middleware\\SecurityEventMiddleware', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 72, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 93, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\OWASPSecurityEventFactory', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\OWASPSecurityEventLogger', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\OWASPSecurityEventLogger', 1 => 'mapLogLevel', 2 => 'App\\Application\\Security\\OWASPSecurityEventLogger', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\SecurityContext', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\Services\\FileUploadSecurityService', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 126, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\Services\\InputValidationService', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 45, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 57, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 70, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskedEmail.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', 1 => 'getMaskedValue', 2 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', ), 1 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', 1 => 'getOriginal', 2 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', ), 2 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', 1 => 'toString', 2 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', ), 3 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', 1 => '__toString', 2 => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskingStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\MaskingStrategy', 1 => 'getDescription', 2 => 'App\\Application\\Security\\ValueObjects\\MaskingStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPEventIdentifier.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 1 => 'toString', 2 => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', 1 => 'getDescription', 2 => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 1 => 'fromSecurityEventType', 2 => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/RequestContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getHostIp', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 1 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getHostname', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 2 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getProtocol', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 3 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getPort', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 4 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getRequestUri', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 5 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getRequestMethod', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 6 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getRegion', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), 7 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\RequestContext', 1 => 'getGeo', 2 => 'App\\Application\\Security\\ValueObjects\\RequestContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 1 => 'getSourceIp', 2 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), 1 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 1 => 'getUserAgent', 2 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), 2 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 1 => 'getSessionId', 2 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), 3 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 1 => 'getRequestId', 2 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), 4 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 1 => 'getUserId', 2 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), 5 => array ( 0 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 1 => 'getTimestamp', 2 => 'App\\Application\\Security\\ValueObjects\\SecurityContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\WafEventProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\WafFeedbackController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\WafFeedbackDashboardController', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 254, ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', 1 => 'mapDetectionCategoryToInputType', 2 => 'App\\Application\\Security\\WafOWASPEventBridge', ), 1 => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', 1 => 'mapDetectionCategoryToAttackType', 2 => 'App\\Application\\Security\\WafOWASPEventBridge', ), 2 => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', 1 => 'mapDetectionCategoryToActivityType', 2 => 'App\\Application\\Security\\WafOWASPEventBridge', ), 3 => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', 1 => 'mapDetectionCategoryToAnomalyType', 2 => 'App\\Application\\Security\\WafOWASPEventBridge', ), 4 => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', 1 => 'mapSeverityToString', 2 => 'App\\Application\\Security\\WafOWASPEventBridge', ), 5 => array ( 0 => 'App\\Application\\Security\\WafOWASPEventBridge', 1 => 'mapToOWASPLogLevel', 2 => 'App\\Application\\Security\\WafOWASPEventBridge', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Service\\QrCodeService', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Shopify\\CustomerRequest', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Shopify\\OrderRequest', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Shopify\\ProductController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Shopify\\ProductRequest', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Shopify\\ShopifyWebhookHandler', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/WebhookRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Shopify\\WebhookRequest', ), ), '/home/michael/dev/michaelschiemer/src/Application/System/BootLogger.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\System\\BootLogger', ), ), '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Test\\WafTestController', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\Test\\WafTestController', 1 => 'createTestRequest', 2 => 'App\\Application\\Test\\WafTestController', ), 1 => array ( 0 => 'App\\Application\\Test\\WafTestController', 1 => 'formatLayerResults', 2 => 'App\\Application\\Test\\WafTestController', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserData.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Application\\User\\UserData', 1 => 'isActive', 2 => 'App\\Application\\User\\UserData', ), 1 => array ( 0 => 'App\\Application\\User\\UserData', 1 => 'getDisplayName', 2 => 'App\\Application\\User\\UserData', ), ), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\User\\UserService', ), ), '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Webhook\\Controller\\LegalWebhookController', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryReturn.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Website\\DemoQueryReturn', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/HomeViewModel.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Website\\HomeViewModel', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Website\\ShowHome', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Application\\Website\\ShowSitemap', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiModel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\AI\\AiModel', 1 => 'getProvider', 2 => 'App\\Domain\\AI\\AiModel', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\AI\\AiQuery', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\AI\\AiResponse', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/Email.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Common\\ValueObject\\Email', 1 => 'equals', 2 => 'App\\Domain\\Common\\ValueObject\\Email', ), 1 => array ( 0 => 'App\\Domain\\Common\\ValueObject\\Email', 1 => '__toString', 2 => 'App\\Domain\\Common\\ValueObject\\Email', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Common\\ValueObject\\PhoneNumber', 1 => 'getValue', 2 => 'App\\Domain\\Common\\ValueObject\\PhoneNumber', ), 1 => array ( 0 => 'App\\Domain\\Common\\ValueObject\\PhoneNumber', 1 => '__toString', 2 => 'App\\Domain\\Common\\ValueObject\\PhoneNumber', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactMessage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Contact\\ContactMessage', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Contact\\ContactRepository', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'save', 2 => 18, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Contact\\Migrations\\CreateContactTable', 1 => 'getDescription', 2 => 'App\\Domain\\Contact\\Migrations\\CreateContactTable', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'primary', 2 => 20, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'string', 2 => 21, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'string', 2 => 22, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'text', 2 => 23, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'imagecopy', 1 => 139, ), 1 => array ( 0 => 'imagedestroy', 1 => 140, ), 2 => array ( 0 => 'imagedestroy', 1 => 142, ), 3 => array ( 0 => 'imagealphablending', 1 => 151, ), 4 => array ( 0 => 'imagesavealpha', 1 => 152, ), 5 => array ( 0 => 'imagefilledrectangle', 1 => 154, ), 6 => array ( 0 => 'imagecopyresampled', 1 => 158, ), 7 => array ( 0 => 'imagedestroy', 1 => 167, ), 8 => array ( 0 => 'imagedestroy', 1 => 168, ), 9 => array ( 0 => 'imageconvolution', 1 => 216, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\Image', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageFormat.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageFormat', 1 => 'getMimeType', 2 => 'App\\Domain\\Media\\ImageFormat', ), 1 => array ( 0 => 'App\\Domain\\Media\\ImageFormat', 1 => 'getQuality', 2 => 'App\\Domain\\Media\\ImageFormat', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Imagick', ), 1 => 'clear', 2 => 24, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageRepository', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'save', 2 => 20, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'save', 2 => 88, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'save', 2 => 98, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageResizer', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'imagecopyresampled', 1 => 49, ), 1 => array ( 0 => 'imagedestroy', 1 => 53, ), 2 => array ( 0 => 'imagedestroy', 1 => 54, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSize.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageSize', 1 => 'getBreakpoint', 2 => 'App\\Domain\\Media\\ImageSize', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageSlot', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageSlotRepository', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'save', 2 => 80, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotView.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageSlotView', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageSourceSetGenerator', 1 => 'groupVariantsByFormat', 2 => 'App\\Domain\\Media\\ImageSourceSetGenerator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 62, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariant.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageVariant', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageVariant', 1 => 'getUrl', 2 => 'App\\Domain\\Media\\ImageVariant', ), 1 => array ( 0 => 'App\\Domain\\Media\\ImageVariant', 1 => 'getVariantKey', 2 => 'App\\Domain\\Media\\ImageVariant', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Media\\ImageVariantRepository', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'save', 2 => 18, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\ImageVariantType', 1 => 'getSizes', 2 => 'App\\Domain\\Media\\ImageVariantType', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Imagick', ), 1 => 'stripImage', 2 => 127, ), 1 => array ( 0 => array ( 0 => 'Imagick', ), 1 => 'setImageResolution', 2 => 130, ), 2 => array ( 0 => array ( 0 => 'Imagick', ), 1 => 'resizeImage', 2 => 143, ), 3 => array ( 0 => array ( 0 => 'Imagick', ), 1 => 'writeImage', 2 => 156, ), 4 => array ( 0 => array ( 0 => 'Imagick', ), 1 => 'destroy', 2 => 158, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\Migrations\\AddSizeToImageVariantsTable', 1 => 'getDescription', 2 => 'App\\Domain\\Media\\Migrations\\AddSizeToImageVariantsTable', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\Migrations\\CreateImageSlotsTable', 1 => 'getDescription', 2 => 'App\\Domain\\Media\\Migrations\\CreateImageSlotsTable', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\Migrations\\CreateImageVariantsTable', 1 => 'getDescription', 2 => 'App\\Domain\\Media\\Migrations\\CreateImageVariantsTable', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\Migrations\\CreateImagesTable', 1 => 'getDescription', 2 => 'App\\Domain\\Media\\Migrations\\CreateImagesTable', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\Migrations\\CreateImagesTableWithSchema', 1 => 'getDescription', 2 => 'App\\Domain\\Media\\Migrations\\CreateImagesTableWithSchema', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'primary', 2 => 20, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'string', 2 => 21, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'string', 2 => 22, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'string', 2 => 23, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'bigInteger', 2 => 24, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'unsignedInteger', 2 => 25, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'unsignedInteger', 2 => 26, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'unique', 2 => 27, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'string', 2 => 28, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'text', 2 => 29, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'unique', 2 => 33, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 34, ), 12 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 35, ), 13 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'engine', 2 => 38, ), 14 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'charset', 2 => 39, ), 15 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'collation', 2 => 40, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/UpdateImageVariantsConstraint.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\Media\\Migrations\\UpdateImageVariantsConstraint', 1 => 'getDescription', 2 => 'App\\Domain\\Media\\Migrations\\UpdateImageVariantsConstraint', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Meta\\Http\\Controller\\MetaAdminController', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Meta\\Http\\Middleware\\MetaMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Meta\\Repository\\DatabaseMetaRepository', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Meta\\Service\\MetaManager', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 127, ), 1 => array ( 0 => 'preg_match_all', 1 => 143, ), 2 => array ( 0 => 'preg_match_all', 1 => 144, ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\Meta\\ValueObject\\MetaData', ), ), '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\User\\Migrations\\CreateUsersTable', 1 => 'getDescription', 2 => 'App\\Domain\\User\\Migrations\\CreateUsersTable', ), ), ), '/home/michael/dev/michaelschiemer/src/Domain/User/User.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Domain\\User\\User', ), ), '/home/michael/dev/michaelschiemer/src/Domain/ValueObjects/EmailAddress.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Domain\\ValueObjects\\EmailAddress', 1 => '__toString', 2 => 'App\\Domain\\ValueObjects\\EmailAddress', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\AnalyticsCollector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Analytics\\AnalyticsCollector', 1 => 'getSessionData', 2 => 'App\\Framework\\Analytics\\AnalyticsCollector', ), 1 => array ( 0 => 'App\\Framework\\Analytics\\AnalyticsCollector', 1 => 'getCounter', 2 => 'App\\Framework\\Analytics\\AnalyticsCollector', ), 2 => array ( 0 => 'App\\Framework\\Analytics\\AnalyticsCollector', 1 => 'getCounters', 2 => 'App\\Framework\\Analytics\\AnalyticsCollector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'setcookie', 1 => 312, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\AnalyticsConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Bridges/SecurityEventBridge.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Bridges\\SecurityEventBridge', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Events\\BusinessEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Events\\PageView', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Events\\SecurityEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Events\\UserAction', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Analytics\\Middleware\\AnalyticsMiddleware', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 87, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 131, ), 1 => array ( 0 => 'usort', 1 => 157, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Api\\ApiException', 1 => 'getResponse', 2 => 'App\\Framework\\Api\\ApiException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Api\\ApiRequestTrait', 1 => 13, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncBarrier', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncBarrier', 1 => 'isBroken', 2 => 'App\\Framework\\Async\\AsyncBarrier', ), 1 => array ( 0 => 'App\\Framework\\Async\\AsyncBarrier', 1 => 'getNumberWaiting', 2 => 'App\\Framework\\Async\\AsyncBarrier', ), 2 => array ( 0 => 'App\\Framework\\Async\\AsyncBarrier', 1 => 'getParties', 2 => 'App\\Framework\\Async\\AsyncBarrier', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 51, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 52, ), 2 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 109, ), 3 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'throw', 2 => 118, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'Fiber', 1 => 'suspend', 2 => 42, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncChannel', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 44, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 59, ), 2 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 69, ), 3 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 82, ), 4 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 104, ), 5 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 129, ), 6 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 156, ), 7 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 162, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'Fiber', 1 => 'suspend', 2 => 53, ), 1 => array ( 0 => 'Fiber', 1 => 'suspend', 2 => 118, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncEventLoop', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 100, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 125, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncMutex', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncMutex', 1 => 'isLocked', 2 => 'App\\Framework\\Async\\AsyncMutex', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 53, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 54, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'Fiber', 1 => 'suspend', 2 => 46, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncOperationFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncPool', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncPromise', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncPromise', 1 => 'isResolved', 2 => 'App\\Framework\\Async\\AsyncPromise', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 63, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 82, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 110, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 228, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 253, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncQueue', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 48, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 82, ), 2 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 109, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'Fiber', 1 => 'suspend', 2 => 71, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncScheduler', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sleep', 1 => 108, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 165, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncSemaphore', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncSemaphore', 1 => 'availablePermits', 2 => 'App\\Framework\\Async\\AsyncSemaphore', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 48, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 49, ), 2 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'resume', 2 => 81, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'Fiber', 1 => 'suspend', 2 => 42, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncServiceInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncStream', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncStream', 1 => 'isClosed', 2 => 'App\\Framework\\Async\\AsyncStream', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 32, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 52, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 72, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\AsyncTimer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncTimer', 1 => 'getNextExecution', 2 => 'App\\Framework\\Async\\AsyncTimer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 305, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 202, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 210, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\BackgroundJob', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Async\\BackgroundJob', 1 => 'canRetry', 2 => 'App\\Framework\\Async\\BackgroundJob', ), 1 => array ( 0 => 'App\\Framework\\Async\\BackgroundJob', 1 => 'toArray', 2 => 'App\\Framework\\Async\\BackgroundJob', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\BackgroundJobProcessor', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\BackgroundJobProcessor', ), 1 => 'enqueue', 2 => 138, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 72, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'start', 2 => 118, ), 2 => array ( 0 => array ( 0 => 'Generator', ), 1 => 'send', 2 => 127, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 259, ), 1 => array ( 0 => 'sleep', 1 => 316, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 296, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor', ), 1 => 'minifyCss', 2 => 328, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor', ), 1 => 'compileSass', 2 => 332, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor', ), 1 => 'minifyJs', 2 => 336, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 83, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'batch', 2 => 195, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Cache\\AsyncCache', ), 1 => 'set', 2 => 210, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'batch', 2 => 257, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Database\\AsyncDatabase', 1 => 'getConnection', 2 => 'App\\Framework\\AsyncExamples\\Database\\AsyncDatabase', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncPool', ), 1 => 'add', 2 => 87, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Database\\AsyncDatabase', ), 1 => 'query', 2 => 121, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/DatabaseResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', 1 => 'getAffectedRows', 2 => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', ), 1 => array ( 0 => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', 1 => 'getExecutionTime', 2 => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncPool', ), 1 => 'add', 2 => 99, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 1 => 'isSuccess', 2 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', ), 1 => array ( 0 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 1 => 'getHeader', 2 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', ), 2 => array ( 0 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 1 => 'toArray', 2 => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\FiberManager', ), 1 => 'async', 2 => 100, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\AsyncExamples\\Mail\\AsyncMailer', ), 1 => 'send', 2 => 109, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\AsyncExamples\\Mail\\Email', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/ApiVersionAttribute.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Attributes\\ApiVersionAttribute', 1 => 'isDeprecated', 2 => 'App\\Framework\\Attributes\\ApiVersionAttribute', ), 1 => array ( 0 => 'App\\Framework\\Attributes\\ApiVersionAttribute', 1 => 'isRemoved', 2 => 'App\\Framework\\Attributes\\ApiVersionAttribute', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Attributes\\Route', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/StaticPage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Attributes\\StaticPage', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/Attributes/IpAuth.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Auth\\Attributes\\IpAuth', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/Auth.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Auth\\Auth', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Auth\\AuthenticationService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'getDerivedKey', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 1 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 2 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'getParameters', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 3 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'getHashedAt', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 4 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'needsArgon2Rehash', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 5 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'needsPbkdf2Rehash', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 6 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'needsScryptRehash', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 7 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'assessArgon2Strength', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 8 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'assessPbkdf2Strength', 2 => 'App\\Framework\\Auth\\HashedPassword', ), 9 => array ( 0 => 'App\\Framework\\Auth\\HashedPassword', 1 => 'assessScryptStrength', 2 => 'App\\Framework\\Auth\\HashedPassword', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Auth\\PasswordHasher', 1 => 'getDefaultParameters', 2 => 'App\\Framework\\Auth\\PasswordHasher', ), 1 => array ( 0 => 'App\\Framework\\Auth\\PasswordHasher', 1 => 'calculateStrengthFromScore', 2 => 'App\\Framework\\Auth\\PasswordHasher', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordStrength.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Auth\\PasswordStrength', 1 => 'getLabel', 2 => 'App\\Framework\\Auth\\PasswordStrength', ), 1 => array ( 0 => 'App\\Framework\\Auth\\PasswordStrength', 1 => 'getScore', 2 => 'App\\Framework\\Auth\\PasswordStrength', ), 2 => array ( 0 => 'App\\Framework\\Auth\\PasswordStrength', 1 => 'shouldRehash', 2 => 'App\\Framework\\Auth\\PasswordStrength', ), 3 => array ( 0 => 'App\\Framework\\Auth\\PasswordStrength', 1 => 'getColor', 2 => 'App\\Framework\\Auth\\PasswordStrength', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordValidationResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Auth\\PasswordValidationResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Auth\\PasswordValidationResult', 1 => 'calculateStrength', 2 => 'App\\Framework\\Auth\\PasswordValidationResult', ), 1 => array ( 0 => 'App\\Framework\\Auth\\PasswordValidationResult', 1 => 'hasErrors', 2 => 'App\\Framework\\Auth\\PasswordValidationResult', ), 2 => array ( 0 => 'App\\Framework\\Auth\\PasswordValidationResult', 1 => 'hasWarnings', 2 => 'App\\Framework\\Auth\\PasswordValidationResult', ), 3 => array ( 0 => 'App\\Framework\\Auth\\PasswordValidationResult', 1 => 'meetsMinimumRequirements', 2 => 'App\\Framework\\Auth\\PasswordValidationResult', ), 4 => array ( 0 => 'App\\Framework\\Auth\\PasswordValidationResult', 1 => 'isRecommended', 2 => 'App\\Framework\\Auth\\PasswordValidationResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthDecision.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', 1 => 'isAllowed', 2 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', ), 1 => array ( 0 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', 1 => 'isDenied', 2 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', ), 2 => array ( 0 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', 1 => 'getDecision', 2 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 1 => 'isRestrictive', 2 => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\CacheBuilder', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheBuilder', 1 => 'build', 2 => 'App\\Framework\\Cache\\CacheBuilder', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'trigger_error', 1 => 51, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifierCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifierCollection', 1 => 'getIdentifiers', 2 => 'App\\Framework\\Cache\\CacheIdentifierCollection', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifierCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Cache\\CacheIdentifierCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifierType', 1 => 'supportsBatchOperations', 2 => 'App\\Framework\\Cache\\CacheIdentifierType', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifierType', 1 => 'isExactMatch', 2 => 'App\\Framework\\Cache\\CacheIdentifierType', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifierType', 1 => 'getDescription', 2 => 'App\\Framework\\Cache\\CacheIdentifierType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\CacheInitializer', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'apcu_clear_cache', 1 => 112, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\CacheItem', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheItem', 1 => 'hasTtl', 2 => 'App\\Framework\\Cache\\CacheItem', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheKey', 1 => 'toString', 2 => 'App\\Framework\\Cache\\CacheKey', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CacheKey', 1 => '__toString', 2 => 'App\\Framework\\Cache\\CacheKey', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CacheKey', 1 => 'equals', 2 => 'App\\Framework\\Cache\\CacheKey', ), 3 => array ( 0 => 'App\\Framework\\Cache\\CacheKey', 1 => 'getType', 2 => 'App\\Framework\\Cache\\CacheKey', ), 4 => array ( 0 => 'App\\Framework\\Cache\\CacheKey', 1 => 'getNormalizedString', 2 => 'App\\Framework\\Cache\\CacheKey', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\CacheKeyCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheKeyCollection', 1 => 'getKeys', 2 => 'App\\Framework\\Cache\\CacheKeyCollection', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CacheKeyCollection', 1 => 'first', 2 => 'App\\Framework\\Cache\\CacheKeyCollection', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CacheKeyCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Cache\\CacheKeyCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CachePattern', 1 => 'toString', 2 => 'App\\Framework\\Cache\\CachePattern', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CachePattern', 1 => 'getType', 2 => 'App\\Framework\\Cache\\CachePattern', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CachePattern', 1 => 'equals', 2 => 'App\\Framework\\Cache\\CachePattern', ), 3 => array ( 0 => 'App\\Framework\\Cache\\CachePattern', 1 => 'getNormalizedString', 2 => 'App\\Framework\\Cache\\CachePattern', ), 4 => array ( 0 => 'App\\Framework\\Cache\\CachePattern', 1 => 'getPattern', 2 => 'App\\Framework\\Cache\\CachePattern', ), 5 => array ( 0 => 'App\\Framework\\Cache\\CachePattern', 1 => 'getCompiledRegex', 2 => 'App\\Framework\\Cache\\CachePattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePrefix.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CachePrefix', 1 => 'toString', 2 => 'App\\Framework\\Cache\\CachePrefix', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CachePrefix', 1 => 'getType', 2 => 'App\\Framework\\Cache\\CachePrefix', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CachePrefix', 1 => 'equals', 2 => 'App\\Framework\\Cache\\CachePrefix', ), 3 => array ( 0 => 'App\\Framework\\Cache\\CachePrefix', 1 => 'getNormalizedString', 2 => 'App\\Framework\\Cache\\CachePrefix', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheResult', 1 => 'getItems', 2 => 'App\\Framework\\Cache\\CacheResult', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CacheResult', 1 => 'isEmpty', 2 => 'App\\Framework\\Cache\\CacheResult', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CacheResult', 1 => 'isCompleteHit', 2 => 'App\\Framework\\Cache\\CacheResult', ), 3 => array ( 0 => 'App\\Framework\\Cache\\CacheResult', 1 => 'isCompleteMiss', 2 => 'App\\Framework\\Cache\\CacheResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheTag.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\CacheTag', 1 => 'toString', 2 => 'App\\Framework\\Cache\\CacheTag', ), 1 => array ( 0 => 'App\\Framework\\Cache\\CacheTag', 1 => 'getType', 2 => 'App\\Framework\\Cache\\CacheTag', ), 2 => array ( 0 => 'App\\Framework\\Cache\\CacheTag', 1 => 'equals', 2 => 'App\\Framework\\Cache\\CacheTag', ), 3 => array ( 0 => 'App\\Framework\\Cache\\CacheTag', 1 => 'getNormalizedString', 2 => 'App\\Framework\\Cache\\CacheTag', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cacheable.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Cacheable', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Commands\\ClearCache', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'opcache_reset', 1 => 31, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/GzipCompression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Compression\\GzipCompression', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NoCompression.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Compression\\NoCompression', 1 => 'compress', 2 => 'App\\Framework\\Cache\\Compression\\NoCompression', ), 1 => array ( 0 => 'App\\Framework\\Cache\\Compression\\NoCompression', 1 => 'decompress', 2 => 'App\\Framework\\Cache\\Compression\\NoCompression', ), 2 => array ( 0 => 'App\\Framework\\Cache\\Compression\\NoCompression', 1 => 'isCompressed', 2 => 'App\\Framework\\Cache\\Compression\\NoCompression', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NullCompression.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Compression\\NullCompression', 1 => 'compress', 2 => 'App\\Framework\\Cache\\Compression\\NullCompression', ), 1 => array ( 0 => 'App\\Framework\\Cache\\Compression\\NullCompression', 1 => 'decompress', 2 => 'App\\Framework\\Cache\\Compression\\NullCompression', ), 2 => array ( 0 => 'App\\Framework\\Cache\\Compression\\NullCompression', 1 => 'isCompressed', 2 => 'App\\Framework\\Cache\\Compression\\NullCompression', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Driver\\ApcuCache', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Driver\\FileCache', 1 => 'getScanPerformance', 2 => 'App\\Framework\\Cache\\Driver\\FileCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Driver\\InMemoryCache', 1 => 'getScanPerformance', 2 => 'App\\Framework\\Cache\\Driver\\InMemoryCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'set', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), 1 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'forget', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), 2 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'clear', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), 3 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'scan', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), 4 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'scanPrefix', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), 5 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'getAllKeys', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), 6 => array ( 0 => 'App\\Framework\\Cache\\Driver\\NullCache', 1 => 'getScanPerformance', 2 => 'App\\Framework\\Cache\\Driver\\NullCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Driver\\RedisCache', 1 => 'getScanPerformance', 2 => 'App\\Framework\\Cache\\Driver\\RedisCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\EventCacheDecorator', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 36, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 38, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 51, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 68, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 79, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 92, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 98, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 104, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheClear.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Events\\CacheClear', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Events\\CacheDelete', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Events\\CacheHit', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Events\\CacheMiss', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Events\\CacheSet', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\FileCacheCleaner', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\GeneralCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\GeneralCache', 1 => 'getDriver', 2 => 'App\\Framework\\Cache\\GeneralCache', ), 1 => array ( 0 => 'App\\Framework\\Cache\\GeneralCache', 1 => 'driverSupports', 2 => 'App\\Framework\\Cache\\GeneralCache', ), 2 => array ( 0 => 'App\\Framework\\Cache\\GeneralCache', 1 => 'hasCompressionEnabled', 2 => 'App\\Framework\\Cache\\GeneralCache', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\GeneralCache', ), 1 => 'set', 2 => 135, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\LoggingCacheDecorator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheMetrics', 1 => 'getHitRate', 2 => 'App\\Framework\\Cache\\Metrics\\CacheMetrics', ), 1 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheMetrics', 1 => 'getAverageLatency', 2 => 'App\\Framework\\Cache\\Metrics\\CacheMetrics', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 266, ), 1 => array ( 0 => 'uasort', 1 => 275, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', 1 => 'getTotalOperations', 2 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', ), 1 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', 1 => 'getEfficiencyRating', 2 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', ), 2 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', 1 => 'getRecommendations', 2 => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', 1 => 'getInner', 2 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', ), 1 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', 1 => 'getMetrics', 2 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', ), 2 => array ( 0 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', 1 => 'getDriverName', 2 => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\MultiLevelCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\MultiLevelCache', 1 => 'getSlowCache', 2 => 'App\\Framework\\Cache\\MultiLevelCache', ), 1 => array ( 0 => 'App\\Framework\\Cache\\MultiLevelCache', 1 => 'getFastCache', 2 => 'App\\Framework\\Cache\\MultiLevelCache', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\MultiLevelCache', ), 1 => 'set', 2 => 167, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\ServiceCacheDecorator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\ServiceCacheDecorator', 1 => 'getCache', 2 => 'App\\Framework\\Cache\\ServiceCacheDecorator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\SmartCache', 1 => 'shouldUseAsync', 2 => 'App\\Framework\\Cache\\SmartCache', ), 1 => array ( 0 => 'App\\Framework\\Cache\\SmartCache', 1 => 'getWrappedCache', 2 => 'App\\Framework\\Cache\\SmartCache', ), 2 => array ( 0 => 'App\\Framework\\Cache\\SmartCache', 1 => 'getTagIndex', 2 => 'App\\Framework\\Cache\\SmartCache', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\TagIndex', ), 1 => 'untagKey', 2 => 662, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\TagIndex', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\TaggedCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\TaggedCache', 1 => 'getCache', 2 => 'App\\Framework\\Cache\\TaggedCache', ), 1 => array ( 0 => 'App\\Framework\\Cache\\TaggedCache', 1 => 'getTags', 2 => 'App\\Framework\\Cache\\TaggedCache', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\SmartCache', ), 1 => 'tag', 2 => 47, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Cache\\TaggedCache', ), 1 => 'put', 2 => 78, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cache\\ValidationCacheDecorator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', ), 1 => 'incrementHalfOpenAttempts', 2 => 103, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerManager', 1 => 'determineHealthStatus', 2 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 1 => 'isAvailable', 2 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', ), 1 => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 1 => 'isBlocked', 2 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', ), 2 => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 1 => 'isInTestPhase', 2 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\Commands\\CircuitBreakerCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\DatabaseCircuitBreaker', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\DatabaseCircuitBreaker', ), 1 => 'execute', 2 => 61, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 1 => 'getDescription', 2 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEventPublisher.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 1 => 'getDescription', 2 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CallbackFailurePredicate', 1 => 'getIdentifier', 2 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CallbackFailurePredicate', ), 1 => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CallbackFailurePredicate', 1 => 'getDescription', 2 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CallbackFailurePredicate', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CompositeFailurePredicate.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CompositeFailurePredicate', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/ExceptionTypeFailurePredicate.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate', 1 => 'shouldTrigger', 2 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate', ), 1 => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate', 1 => 'getIdentifier', 2 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 1 => 'builder', 2 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\HttpStatusFailurePredicate', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\HttpStatusFailurePredicate', 1 => 'getIdentifier', 2 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\HttpStatusFailurePredicate', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CircuitBreaker\\SlidingWindow\\CircuitBreakerSlidingWindow', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CircuitBreaker\\SlidingWindow\\CircuitBreakerSlidingWindow', 1 => 'getSlidingWindow', 2 => 'App\\Framework\\CircuitBreaker\\SlidingWindow\\CircuitBreakerSlidingWindow', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\CommandBusInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CommandBus\\CommandHandlerCompiler', 1 => 'getAttributeClass', 2 => 'App\\Framework\\CommandBus\\CommandHandlerCompiler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerDescriptor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\CommandHandlerDescriptor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\CommandBus\\CommandHandlerMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\CommandHandlersCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\CommandBus\\CommandHandlersCollection', 1 => 'get', 2 => 'App\\Framework\\CommandBus\\CommandHandlersCollection', ), 1 => array ( 0 => 'App\\Framework\\CommandBus\\CommandHandlersCollection', 1 => 'toArray', 2 => 'App\\Framework\\CommandBus\\CommandHandlersCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\DefaultCommandBus', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/DatabaseTransactionMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\Middleware\\DatabaseTransactionMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/LoggingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\Middleware\\LoggingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/PerformanceMonitoringMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\CommandBus\\Middleware\\PerformanceMonitoringMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/AppConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\AppConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ConfigValidator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\ConfigValidator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\Console\\SecretsCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\EncryptedEnvLoader', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\Environment', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EnvironmentType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Config\\EnvironmentType', 1 => 'isProduction', 2 => 'App\\Framework\\Config\\EnvironmentType', ), 1 => array ( 0 => 'App\\Framework\\Config\\EnvironmentType', 1 => 'isDevelopment', 2 => 'App\\Framework\\Config\\EnvironmentType', ), 2 => array ( 0 => 'App\\Framework\\Config\\EnvironmentType', 1 => 'isStaging', 2 => 'App\\Framework\\Config\\EnvironmentType', ), 3 => array ( 0 => 'App\\Framework\\Config\\EnvironmentType', 1 => 'isDebugEnabled', 2 => 'App\\Framework\\Config\\EnvironmentType', ), 4 => array ( 0 => 'App\\Framework\\Config\\EnvironmentType', 1 => 'isProductionLike', 2 => 'App\\Framework\\Config\\EnvironmentType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ExternalApiConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\External\\ExternalApiConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/RapidMailConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\External\\RapidMailConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ShopifyConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\External\\ShopifyConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\SecretManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\SecurityConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\TypedConfigInitializer', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Config\\ConfigValidator', ), 1 => 'validateAndReport', 2 => 39, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\TypedConfiguration', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 1 => 'isSecure', 2 => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityRiskLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', 1 => 'getDisplayName', 2 => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', ), 1 => array ( 0 => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', 1 => 'requiresImmediateAction', 2 => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', ), 2 => array ( 0 => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', 1 => 'getPriority', 2 => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/WafConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Config\\WafConfig', 1 => 'getDdosConfigEnvironment', 2 => 'App\\Framework\\Config\\WafConfig', ), 1 => array ( 0 => 'App\\Framework\\Config\\WafConfig', 1 => 'getEnvironmentType', 2 => 'App\\Framework\\Config\\WafConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandList.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\CommandList', 1 => 'has', 2 => 'App\\Framework\\Console\\CommandList', ), 1 => array ( 0 => 'App\\Framework\\Console\\CommandList', 1 => 'toArray', 2 => 'App\\Framework\\Console\\CommandList', ), 2 => array ( 0 => 'App\\Framework\\Console\\CommandList', 1 => 'isEmpty', 2 => 'App\\Framework\\Console\\CommandList', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\CommandRegistry', 1 => 'getCommandList', 2 => 'App\\Framework\\Console\\CommandRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'system', 1 => 269, ), 1 => array ( 0 => 'system', 1 => 271, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'newMenu', 2 => 92, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'setInteractiveMode', 2 => 139, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'newMenu', 2 => 179, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Components\\TextBox', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Console.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Console', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'pcntl_signal', 1 => 55, ), 1 => array ( 0 => 'pcntl_signal', 1 => 56, ), 2 => array ( 0 => 'pcntl_signal', 1 => 57, ), 3 => array ( 0 => 'pcntl_signal_dispatch', 1 => 123, ), 4 => array ( 0 => 'pcntl_signal_dispatch', 1 => 221, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'setTitle', 2 => 314, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'addItem', 2 => 319, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleColor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ConsoleColor', 1 => 'toAnsi', 2 => 'App\\Framework\\Console\\ConsoleColor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\ConsoleCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ConsoleCommandMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Console\\ConsoleCommandMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleFormat.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ConsoleFormat', 1 => 'toAnsi', 2 => 'App\\Framework\\Console\\ConsoleFormat', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ConsoleInput', 1 => 'getArgument', 2 => 'App\\Framework\\Console\\ConsoleInput', ), 1 => array ( 0 => 'App\\Framework\\Console\\ConsoleInput', 1 => 'getArguments', 2 => 'App\\Framework\\Console\\ConsoleInput', ), 2 => array ( 0 => 'App\\Framework\\Console\\ConsoleInput', 1 => 'getOption', 2 => 'App\\Framework\\Console\\ConsoleInput', ), 3 => array ( 0 => 'App\\Framework\\Console\\ConsoleInput', 1 => 'hasOption', 2 => 'App\\Framework\\Console\\ConsoleInput', ), 4 => array ( 0 => 'App\\Framework\\Console\\ConsoleInput', 1 => 'getOptions', 2 => 'App\\Framework\\Console\\ConsoleInput', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'system', 1 => 86, ), 1 => array ( 0 => 'system', 1 => 88, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'setTitle', 2 => 108, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'addItem', 2 => 111, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'setTitle', 2 => 123, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'addSeparator', 2 => 127, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 1 => 'addItem', 2 => 129, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleStyle.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\ConsoleStyle', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\DemoCommand\\ScreenDemoCommand', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'setInteractiveMode', 2 => 26, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'newMenu', 2 => 29, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'new', 2 => 66, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Cursor', ), 1 => 'right', 2 => 74, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Cursor', ), 1 => 'left', 2 => 78, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Cursor', ), 1 => 'moveTo', 2 => 82, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Cursor', ), 1 => 'home', 2 => 86, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'waitForInput', 2 => 91, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'new', 2 => 96, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Display', ), 1 => 'clear', 2 => 110, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Display', ), 1 => 'clearLine', 2 => 124, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'waitForInput', 2 => 129, ), 12 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'new', 2 => 134, ), 13 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Display', ), 1 => 'clearLine', 2 => 145, ), 14 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'waitForInput', 2 => 155, ), 15 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'new', 2 => 160, ), 16 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'waitForInput', 2 => 178, ), 17 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 1 => 'newMenu', 2 => 181, ), 18 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\DemoCommand\\ScreenDemoCommand', ), 1 => '__invoke', 2 => 182, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Examples\\ProgressBarExample', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'start', 2 => 30, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'advance', 2 => 35, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'finish', 2 => 38, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'setFormat', 2 => 43, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'setBarCharacters', 2 => 44, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'start', 2 => 45, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'advance', 2 => 50, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ProgressBar', ), 1 => 'finish', 2 => 53, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Examples\\SpinnerExample', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'start', 2 => 30, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'update', 2 => 35, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'success', 2 => 38, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'start', 2 => 51, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'setMessage', 2 => 57, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'update', 2 => 60, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'success', 2 => 63, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'start', 2 => 68, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'update', 2 => 72, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Spinner', ), 1 => 'error', 2 => 75, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\Table', ), 1 => 'addRow', 2 => 32, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\Table', ), 1 => 'addRow', 2 => 49, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'setNodeStyle', 2 => 28, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'setLeafStyle', 2 => 29, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 34, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 35, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 39, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 44, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 45, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 46, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 49, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 50, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 52, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 53, ), 12 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'setNodeStyle', 2 => 62, ), 13 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'setLeafStyle', 2 => 63, ), 14 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'setLineStyle', 2 => 64, ), 15 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 69, ), 16 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 70, ), 17 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 72, ), 18 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 73, ), 19 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 74, ), 20 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 77, ), 21 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 78, ), 22 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 79, ), 23 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 82, ), 24 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 83, ), 25 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Components\\TreeHelper', ), 1 => 'addLeaf', 2 => 84, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ExitCode.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\ExitCode', 1 => 'getDescription', 2 => 'App\\Framework\\Console\\ExitCode', ), 1 => array ( 0 => 'App\\Framework\\Console\\ExitCode', 1 => 'isSuccess', 2 => 'App\\Framework\\Console\\ExitCode', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Cursor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Screen\\Cursor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Screen\\Display', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\ScreenManager', 1 => 'shouldClearSmart', 2 => 'App\\Framework\\Console\\Screen\\ScreenManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Display', ), 1 => 'clear', 2 => 56, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Console\\Screen\\Display', ), 1 => 'clearLine', 2 => 100, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/SpinnerStyle.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Console\\SpinnerStyle', 1 => 'getFrames', 2 => 'App\\Framework\\Console\\SpinnerStyle', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Context\\ExecutionContext', 1 => 'getType', 2 => 'App\\Framework\\Context\\ExecutionContext', ), 1 => array ( 0 => 'App\\Framework\\Context\\ExecutionContext', 1 => 'isWeb', 2 => 'App\\Framework\\Context\\ExecutionContext', ), 2 => array ( 0 => 'App\\Framework\\Context\\ExecutionContext', 1 => 'isWorker', 2 => 'App\\Framework\\Context\\ExecutionContext', ), 3 => array ( 0 => 'App\\Framework\\Context\\ExecutionContext', 1 => 'isConsole', 2 => 'App\\Framework\\Context\\ExecutionContext', ), 4 => array ( 0 => 'App\\Framework\\Context\\ExecutionContext', 1 => 'isTest', 2 => 'App\\Framework\\Context\\ExecutionContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'ini_set', 1 => 71, ), 1 => array ( 0 => 'ini_set', 1 => 72, ), 2 => array ( 0 => 'error_reporting', 1 => 73, ), 3 => array ( 0 => 'spl_autoload_register', 1 => 75, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ContainerBootstrapper', ), 1 => 'bootstrap', 2 => 148, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapperLocator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\AttributeMapperLocator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\AttributeMappingVisitor', 1 => 'getCacheableData', 2 => 'App\\Framework\\Core\\AttributeMappingVisitor', ), 1 => array ( 0 => 'App\\Framework\\Core\\AttributeMappingVisitor', 1 => 'getAttributesOfType', 2 => 'App\\Framework\\Core\\AttributeMappingVisitor', ), 2 => array ( 0 => 'App\\Framework\\Core\\AttributeMappingVisitor', 1 => 'getAllMappedAttributes', 2 => 'App\\Framework\\Core\\AttributeMappingVisitor', ), 3 => array ( 0 => 'App\\Framework\\Core\\AttributeMappingVisitor', 1 => 'getProcessingStats', 2 => 'App\\Framework\\Core\\AttributeMappingVisitor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\ContainerBootstrapper', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\DynamicRoute', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Alphabet.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 1 => 'getAlphabet', 2 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', ), 1 => array ( 0 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 1 => 'usesPadding', 2 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', ), 2 => array ( 0 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 1 => 'getCharacterCount', 2 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', ), 3 => array ( 0 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 1 => 'getUseCases', 2 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', ), 4 => array ( 0 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 1 => 'getDescription', 2 => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ApplicationBooted.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Events\\ApplicationBooted', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ErrorOccurred.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Events\\ErrorOccurred', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 37, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 162, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcherInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventHandlerCompiler', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Core\\Events\\EventHandlerCompiler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 31, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Core\\Events\\EventHandlerMapper', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 68, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/OnEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Events\\OnEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Events\\UserRegistered', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', 1 => 'getCacheableData', 2 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', ), 1 => array ( 0 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', 1 => 'getImplementations', 2 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', ), 2 => array ( 0 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', 1 => 'getClassInterfaces', 2 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', ), 3 => array ( 0 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', 1 => 'getAllImplementations', 2 => 'App\\Framework\\Core\\InterfaceImplementationVisitor', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 133, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\PathProvider', 1 => 'getBasePath', 2 => 'App\\Framework\\Core\\PathProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Performance\\ContainerPerformanceMonitor', ), 1 => 'endOperation', 2 => 104, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Performance\\ContainerPerformanceResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Performance\\ContainerPerformanceResult', 1 => 'toArray', 2 => 'App\\Framework\\Core\\Performance\\ContainerPerformanceResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\RouteCache', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\RouteCompiler', 1 => 'compileNamedRoutes', 2 => 'App\\Framework\\Core\\RouteCompiler', ), 1 => array ( 0 => 'App\\Framework\\Core\\RouteCompiler', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Core\\RouteCompiler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 253, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\RouteMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Core\\RouteMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\StaticRoute', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Byte.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Byte', 1 => 'toBytes', 2 => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Byte', 1 => 'equals', 2 => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Byte', 1 => 'greaterThan', 2 => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Byte', 1 => 'lessThan', 2 => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Byte', 1 => 'isEmpty', 2 => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Byte', 1 => 'isNotEmpty', 2 => 'App\\Framework\\Core\\ValueObjects\\Byte', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ByteUnit.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', 1 => 'getMultiplier', 2 => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', 1 => 'getName', 2 => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'getFullyQualified', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'getNamespace', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'getShortName', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'getWithLeadingSlash', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'inSameNamespace', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 6 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 7 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'toDebugString', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 8 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ClassName', 1 => 'equals', 2 => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', 1 => 'getHemisphere', 2 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', 1 => 'isNorthern', 2 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', 1 => 'isSouthern', 2 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', 1 => 'isEastern', 2 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', 1 => 'isWestern', 2 => 'App\\Framework\\Core\\ValueObjects\\Coordinates', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/CountryCode.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 1 => 'getCountryName', 2 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 1 => 'getContinent', 2 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\CountryCode', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Duration.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'toSeconds', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'toNanoseconds', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'equals', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'greaterThan', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'lessThan', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'isZero', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 6 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Duration', 1 => 'isNotZero', 2 => 'App\\Framework\\Core\\ValueObjects\\Duration', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 1 => 'getValue', 2 => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/GrowthRate.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'getValue', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'toDecimal', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'toMultiplier', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'greaterThan', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'lessThan', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isPositiveGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 6 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isNegativeGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 7 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isModerateMemoryGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 8 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isHighMemoryGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 9 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isCriticalMemoryGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 10 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isExtremeMemoryGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 11 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'isSignificantGrowth', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), 12 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 1 => 'getGrowthLevel', 2 => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Hash.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Hash', 1 => 'getValue', 2 => 'App\\Framework\\Core\\ValueObjects\\Hash', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Hash', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Core\\ValueObjects\\Hash', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Hash', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\Hash', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Hash', 1 => 'toPrefixedString', 2 => 'App\\Framework\\Core\\ValueObjects\\Hash', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Hash', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\Hash', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/HashAlgorithm.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 1 => 'secure', 2 => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 1 => 'isSecure', 2 => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 1 => 'getLength', 2 => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/MethodName.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\MethodName', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\MethodName', 1 => 'isConstructor', 2 => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\MethodName', 1 => 'isInvokable', 2 => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\MethodName', 1 => 'equals', 2 => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\MethodName', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Percentage.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'getValue', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'toDecimal', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'greaterThan', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'lessThan', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'isCritical', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'isEmpty', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 6 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'isZero', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 7 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Percentage', 1 => 'isFull', 2 => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Port.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Port', 1 => 'isValidPort', 2 => 'App\\Framework\\Core\\ValueObjects\\Port', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Port', 1 => 'getScheme', 2 => 'App\\Framework\\Core\\ValueObjects\\Port', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Port', 1 => 'getName', 2 => 'App\\Framework\\Core\\ValueObjects\\Port', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Port', 1 => 'isSecure', 2 => 'App\\Framework\\Core\\ValueObjects\\Port', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Port', 1 => 'isWellKnown', 2 => 'App\\Framework\\Core\\ValueObjects\\Port', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Score', 1 => 'value', 2 => 'App\\Framework\\Core\\ValueObjects\\Score', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Score', 1 => 'toDecimal', 2 => 'App\\Framework\\Core\\ValueObjects\\Score', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Score', 1 => 'isAbove', 2 => 'App\\Framework\\Core\\ValueObjects\\Score', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Score', 1 => 'isBelow', 2 => 'App\\Framework\\Core\\ValueObjects\\Score', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ScoreLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 1 => 'fromScore', 2 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 1 => 'getThreshold', 2 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 1 => 'getPriority', 2 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 1 => 'getDescription', 2 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 1 => 'getRecommendedAction', 2 => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', 1 => 'getTrustScore', 2 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', 1 => 'getName', 2 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', 1 => 'shouldBlock', 2 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', 1 => 'requiresVerification', 2 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator', 1 => 'buildUrl', 2 => 'App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator', 1 => 'isDefaultPort', 2 => 'App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', ), 1 => 'parse', 2 => 48, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getCounters', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getCounter', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'hasCounter', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getMemoryUsageMb', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getHitRatioPercent', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getMetadata', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 6 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getMetadataValue', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 7 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'getRecommendations', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 8 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'hasRecommendations', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), 9 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Statistics', 1 => 'calculateAverageHitRatio', 2 => 'App\\Framework\\Core\\ValueObjects\\Statistics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/TimeUnit.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', 1 => 'getMultiplierToSeconds', 2 => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', 1 => 'getName', 2 => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', 1 => 'getNamePlural', 2 => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 1 => 'toFloat', 2 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 1 => 'toTimestamp', 2 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 1 => 'isBefore', 2 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 1 => 'isAfter', 2 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 1 => 'jsonSerialize', 2 => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timezone', 1 => 'isUtc', 2 => 'App\\Framework\\Core\\ValueObjects\\Timezone', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timezone', 1 => 'getName', 2 => 'App\\Framework\\Core\\ValueObjects\\Timezone', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timezone', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\Timezone', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Timezone', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\Timezone', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureNewCollector' => array ( 0 => array ( 0 => 'DateTimeZone', 1 => 222, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Url', 1 => 'getValue', 2 => 'App\\Framework\\Core\\ValueObjects\\Url', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Url', 1 => 'isAbsolute', 2 => 'App\\Framework\\Core\\ValueObjects\\Url', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Url', 1 => 'hasCredentials', 2 => 'App\\Framework\\Core\\ValueObjects\\Url', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Url', 1 => 'equals', 2 => 'App\\Framework\\Core\\ValueObjects\\Url', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Url', 1 => 'toString', 2 => 'App\\Framework\\Core\\ValueObjects\\Url', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Url', 1 => '__toString', 2 => 'App\\Framework\\Core\\ValueObjects\\Url', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Version.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getValue', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 1 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getMajor', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 2 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getMinor', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 3 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getPatch', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 4 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getPreRelease', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 5 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getBuildMetadata', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 6 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'isCompatibleWith', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 7 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'equals', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 8 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'isPreRelease', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 9 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'isStable', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 10 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getVersionCore', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), 11 => array ( 0 => 'App\\Framework\\Core\\ValueObjects\\Version', 1 => 'getShortVersion', 2 => 'App\\Framework\\Core\\ValueObjects\\Version', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/VersionInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\VersionInfo', 1 => 'getVersion', 2 => 'App\\Framework\\Core\\VersionInfo', ), 1 => array ( 0 => 'App\\Framework\\Core\\VersionInfo', 1 => 'getEnvironmentInfo', 2 => 'App\\Framework\\Core\\VersionInfo', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Core\\Warmup\\ContainerWarmupStrategy', 1 => 'App\\Framework\\Core\\Warmup\\WarmupResult', 2 => 'App\\Framework\\Core\\Warmup\\WarmupOperation', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Warmup\\WarmupOperation', 1 => 'toArray', 2 => 'App\\Framework\\Core\\Warmup\\WarmupOperation', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\DI\\DefaultContainer', ), 1 => 'get', 2 => 194, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 1 => 'getClass', 2 => 237, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\AdvancedHash', 1 => 'create', 2 => 'App\\Framework\\Cryptography\\AdvancedHash', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/ConstantTimeExecutor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\ConstantTimeExecutor', 1 => 'getTargetDuration', 2 => 'App\\Framework\\Cryptography\\ConstantTimeExecutor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cryptography\\CryptographicUtilities', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'ksort', 1 => 43, ), 1 => array ( 0 => 'ksort', 1 => 44, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DerivedKey.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getKey', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getSalt', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 2 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 3 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getIterations', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 4 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getKeyLength', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 5 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getMemoryCost', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 6 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getThreads', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 7 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getBlockSize', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 8 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'getParallelization', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 9 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'isArgon2', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), 10 => array ( 0 => 'App\\Framework\\Cryptography\\DerivedKey', 1 => 'isScrypt', 2 => 'App\\Framework\\Cryptography\\DerivedKey', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignature', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'ksort', 1 => 182, ), 1 => array ( 0 => 'ksort', 1 => 202, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignatureResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'getSignature', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), 2 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'getHashAlgorithm', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), 3 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'getKeySize', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), 4 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'getCurve', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), 5 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'isRsa', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), 6 => array ( 0 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 1 => 'isEcdsa', 2 => 'App\\Framework\\Cryptography\\DigitalSignatureResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/HashResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\HashResult', 1 => 'getHash', 2 => 'App\\Framework\\Cryptography\\HashResult', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\HashResult', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Cryptography\\HashResult', ), 2 => array ( 0 => 'App\\Framework\\Cryptography\\HashResult', 1 => 'getInputLength', 2 => 'App\\Framework\\Cryptography\\HashResult', ), 3 => array ( 0 => 'App\\Framework\\Cryptography\\HashResult', 1 => 'getKeyLength', 2 => 'App\\Framework\\Cryptography\\HashResult', ), 4 => array ( 0 => 'App\\Framework\\Cryptography\\HashResult', 1 => 'getOutputLength', 2 => 'App\\Framework\\Cryptography\\HashResult', ), 5 => array ( 0 => 'App\\Framework\\Cryptography\\HashResult', 1 => 'getSeed', 2 => 'App\\Framework\\Cryptography\\HashResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cryptography\\KeyDerivationFunction', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyPair.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cryptography\\KeyPair', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\KeyPair', 1 => 'getPrivateKey', 2 => 'App\\Framework\\Cryptography\\KeyPair', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\KeyPair', 1 => 'getPublicKey', 2 => 'App\\Framework\\Cryptography\\KeyPair', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PrivateKey.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'getKeyMaterial', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), 2 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'getKeySize', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), 3 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'getCurve', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), 4 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'isRsa', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), 5 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'isEcdsa', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), 6 => array ( 0 => 'App\\Framework\\Cryptography\\PrivateKey', 1 => 'toArray', 2 => 'App\\Framework\\Cryptography\\PrivateKey', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'getKeyMaterial', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'getAlgorithm', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), 2 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'getKeySize', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), 3 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'getCurve', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), 4 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'isRsa', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), 5 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'isEcdsa', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), 6 => array ( 0 => 'App\\Framework\\Cryptography\\PublicKey', 1 => 'toArray', 2 => 'App\\Framework\\Cryptography\\PublicKey', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getValue', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 1 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getType', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 2 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getFormat', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 3 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getLength', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 4 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getPrefix', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 5 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getRawBytes', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 6 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getMetadata', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 7 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getCreatedAt', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 8 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'toString', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 9 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => '__toString', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 10 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'hasPrefix', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 11 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isType', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 12 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isFormat', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 13 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isApiKey', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 14 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isSessionToken', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 15 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isCsrfToken', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 16 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isVerificationToken', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 17 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isBearerToken', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 18 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isOtp', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 19 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isSingleUse', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 20 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'isLongLived', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), 21 => array ( 0 => 'App\\Framework\\Cryptography\\SecureToken', 1 => 'getMetadataValue', 2 => 'App\\Framework\\Cryptography\\SecureToken', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureTokenGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Cryptography\\SecureTokenGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'toString', 2 => 'App\\Framework\\Cuid\\Cuid', ), 1 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'getValue', 2 => 'App\\Framework\\Cuid\\Cuid', ), 2 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => '__toString', 2 => 'App\\Framework\\Cuid\\Cuid', ), 3 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'getTimestamp', 2 => 'App\\Framework\\Cuid\\Cuid', ), 4 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'getCounter', 2 => 'App\\Framework\\Cuid\\Cuid', ), 5 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'getFingerprint', 2 => 'App\\Framework\\Cuid\\Cuid', ), 6 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'getRandom', 2 => 'App\\Framework\\Cuid\\Cuid', ), 7 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'equals', 2 => 'App\\Framework\\Cuid\\Cuid', ), 8 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'isOlderThan', 2 => 'App\\Framework\\Cuid\\Cuid', ), 9 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'isNewerThan', 2 => 'App\\Framework\\Cuid\\Cuid', ), 10 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'isSameProcess', 2 => 'App\\Framework\\Cuid\\Cuid', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cuid\\CuidGenerator', 1 => 'getFingerprint', 2 => 'App\\Framework\\Cuid\\CuidGenerator', ), 1 => array ( 0 => 'App\\Framework\\Cuid\\CuidGenerator', 1 => 'getCurrentCounter', 2 => 'App\\Framework\\Cuid\\CuidGenerator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Cuid\\Cuid', 1 => 'fromString', 2 => 155, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', 1 => 'calculateDistributionAnomalyScore', 2 => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 477, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', 1 => 'identifyAnomalyIndicators', 2 => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryRisk', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryRisk', 1 => 'isCritical', 2 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryRisk', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryVelocity', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\GeographicDistribution', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\GeographicDistribution', 1 => 'isGlobalAttack', 2 => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\GeographicDistribution', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', 1 => 'calculatePatternConfidence', 2 => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', 1 => 'calculateBotScore', 2 => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 338, ), 1 => array ( 0 => 'sort', 1 => 437, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', 1 => 'getRecommendedAction', 2 => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Components\\WafAnalysisAdapter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\DDoSConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\DDoSProtectionEngine', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', 1 => 'evaluateResponseEffectiveness', 2 => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 1 => 'requiresUserInteraction', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 1 => 'isSuccessfulMitigation', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/ResponseAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'getDescription', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'getSeverity', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'isBlocking', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 3 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'isRateLimiting', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 4 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'isChallenge', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 5 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'requiresUserInteraction', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 6 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'getExpectedDuration', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 7 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'getRecommendedHttpStatus', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), 8 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 1 => 'getRetryAfter', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/ResponseType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', 1 => 'getDescription', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', 1 => 'isBlocking', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', 1 => 'allowsRequest', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', ), 3 => array ( 0 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', 1 => 'requiresSpecialHandling', 2 => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/AttackPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 1 => 'getDescription', 2 => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 1 => 'getSeverityLevel', 2 => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 1 => 'getRecommendedMitigation', 2 => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 1 => 'requiresBlocking', 2 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 1 => 'isSuspiciousLocation', 2 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 1 => 'isCriticalThreat', 2 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', ), 3 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 1 => 'isHighThreat', 2 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', ), 4 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 1 => 'isMediumThreat', 2 => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 1 => 'getNumericValue', 2 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 1 => 'getDescription', 2 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 1 => 'requiresImmediateAction', 2 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', 1 => 'getScore', 2 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', 1 => 'getIndicators', 2 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', 1 => 'getSources', 2 => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', 1 => 'getThresholdForAttackType', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', 1 => 'isDetectionEnabled', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', 1 => 'getCacheRetentionSeconds', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', ), 3 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', 1 => 'toArray', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getName', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 1 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 2 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getPriority', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 3 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getConfig', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 4 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 5 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 6 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 7 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getVersion', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), 8 => array ( 0 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 716, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 193, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 245, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 298, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 386, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 445, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 510, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 1 => 'add', 2 => 554, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\BindingRegistry', 1 => 'hasBinding', 2 => 'App\\Framework\\DI\\BindingRegistry', ), 1 => array ( 0 => 'App\\Framework\\DI\\BindingRegistry', 1 => 'getBinding', 2 => 'App\\Framework\\DI\\BindingRegistry', ), 2 => array ( 0 => 'App\\Framework\\DI\\BindingRegistry', 1 => 'getAllBindings', 2 => 'App\\Framework\\DI\\BindingRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\ContainerCompiler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 1 => 'getParameters', 2 => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Dependency\\Dependency', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 1 => 'toArray', 2 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', ), 1 => array ( 0 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 1 => 'get', 2 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', ), 2 => array ( 0 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\DI\\Dependency\\DependencyCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', ), 1 => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', 1 => 'get', 2 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', ), 2 => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', 1 => 'toArray', 2 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', ), 3 => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', 1 => 'usesDependencyType', 2 => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheInfo', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\Dependency\\ParameterCacheInfo', 1 => 'hasClassDependency', 2 => 'App\\Framework\\DI\\Dependency\\ParameterCacheInfo', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Dependency\\ResolvedParameter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\DependencyResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Initializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\Initializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\InitializerDependencyGraph', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\InitializerDependencyGraph', 1 => 'hasNode', 2 => 'App\\Framework\\DI\\InitializerDependencyGraph', ), 1 => array ( 0 => 'App\\Framework\\DI\\InitializerDependencyGraph', 1 => 'getNode', 2 => 'App\\Framework\\DI\\InitializerDependencyGraph', ), 2 => array ( 0 => 'App\\Framework\\DI\\InitializerDependencyGraph', 1 => 'getNodes', 2 => 'App\\Framework\\DI\\InitializerDependencyGraph', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\InitializerMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\DI\\InitializerMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\InstanceRegistry', 1 => 'getSingleton', 2 => 'App\\Framework\\DI\\InstanceRegistry', ), 1 => array ( 0 => 'App\\Framework\\DI\\InstanceRegistry', 1 => 'hasSingleton', 2 => 'App\\Framework\\DI\\InstanceRegistry', ), 2 => array ( 0 => 'App\\Framework\\DI\\InstanceRegistry', 1 => 'getInstance', 2 => 'App\\Framework\\DI\\InstanceRegistry', ), 3 => array ( 0 => 'App\\Framework\\DI\\InstanceRegistry', 1 => 'hasInstance', 2 => 'App\\Framework\\DI\\InstanceRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\LazyInstantiator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\MethodInvoker', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\SingletonDetector', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ValueObjects/DependencyGraphNode.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 1 => 'hasDependencies', 2 => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\AsyncAwareConnection', 1 => 'async', 2 => 'App\\Framework\\Database\\AsyncAwareConnection', ), 1 => array ( 0 => 'App\\Framework\\Database\\AsyncAwareConnection', 1 => 'getWrappedConnection', 2 => 'App\\Framework\\Database\\AsyncAwareConnection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\AsyncDatabaseAdapter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\AsyncDatabaseBuilder', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 1 => 'getWrappedConnection', 2 => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Async\\AsyncService', ), 1 => 'async', 2 => 264, ), 1 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 345, ), 2 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 352, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Column.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Attributes\\Column', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Entity.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Attributes\\Entity', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Type.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Attributes\\Type', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Backup\\BackupMetadata', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Backup\\BackupOptions', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Backup\\BackupOptions', 1 => 'toArray', 2 => 'App\\Framework\\Database\\Backup\\BackupOptions', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Backup\\BackupResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupRetentionPolicy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Backup\\BackupRetentionPolicy', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Backup\\Console\\BackupCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Backup\\DatabaseBackupService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Backup\\DatabaseBackupService', 1 => 'generateBackupFilename', 2 => 'App\\Framework\\Database\\Backup\\DatabaseBackupService', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 142, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\BatchRelationLoader', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\BatchRelationLoader', 1 => 'getRelationMetadata', 2 => 'App\\Framework\\Database\\BatchRelationLoader', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheAdapterStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheAdapterStrategy', 1 => 'calculateHitRatio', 2 => 'App\\Framework\\Database\\Cache\\CacheAdapterStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheMetrics', 1 => 'calculateRegionEfficiency', 2 => 'App\\Framework\\Database\\Cache\\CacheMetrics', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 287, ), 1 => array ( 0 => 'uasort', 1 => 301, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheRegion.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheRegion', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheRegion', 1 => 'getKeyPrefix', 2 => 'App\\Framework\\Database\\Cache\\CacheRegion', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheWarmupStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheWarmupStrategy', 1 => 'getDefaultStrategies', 2 => 'App\\Framework\\Database\\Cache\\CacheWarmupStrategy', ), 1 => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheWarmupStrategy', 1 => 'createCriticalStrategy', 2 => 'App\\Framework\\Database\\Cache\\CacheWarmupStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\EntityCacheKey', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 1 => 'getStrategyForEntity', 2 => 'App\\Framework\\Database\\Cache\\EntityCacheManager', ), 1 => array ( 0 => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 1 => 'isEnabled', 2 => 'App\\Framework\\Database\\Cache\\EntityCacheManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'putEntity', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 1 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'getEntity', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 2 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'hasEntity', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 3 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'evictEntity', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 4 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'putQueryResult', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 5 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'getQueryResult', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 6 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'hasQueryResult', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 7 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'evictQueryResult', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 8 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'putCollection', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 9 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'getCollection', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 10 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'hasCollection', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 11 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'evictCollection', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 12 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'evictEntityClass', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 13 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'clear', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 14 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'getStats', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), 15 => array ( 0 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 1 => 'getRegionStats', 2 => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\QueryCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\QueryCache', 1 => 'getQueryStats', 2 => 'App\\Framework\\Database\\Cache\\QueryCache', ), 1 => array ( 0 => 'App\\Framework\\Database\\Cache\\QueryCache', 1 => 'isEnabled', 2 => 'App\\Framework\\Database\\Cache\\QueryCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 1 => 'toString', 2 => 'App\\Framework\\Database\\Cache\\QueryCacheKey', ), 1 => array ( 0 => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 1 => 'getSql', 2 => 'App\\Framework\\Database\\Cache\\QueryCacheKey', ), 2 => array ( 0 => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\Cache\\QueryCacheKey', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'ksort', 1 => 66, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', 1 => 'getStats', 2 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', ), 1 => array ( 0 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', 1 => 'getRegionForEntity', 2 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', ), 2 => array ( 0 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', 1 => 'invalidatePattern', 2 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 322, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 323, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 324, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', ), 1 => 'evictEntity', 2 => 342, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', ), 1 => 'evictEntity', 2 => 354, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', ), 1 => 'invalidatePattern', 2 => 368, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', 1 => 'calculateHitRatio', 2 => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', ), 1 => 'delete', 2 => 46, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', 1 => 'isActionable', 2 => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 1 => 'getTotalRequests', 2 => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', 1 => 'getTotalAccess', 2 => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 1 => 'getTotalRequests', 2 => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Commands\\ClearProfilingDataCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Commands\\DatabaseOptimizeCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Commands\\ExportProfilingDataCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Commands\\ShowProfilingStatsCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Config\\DatabaseConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Config\\DatabaseConfigInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/PoolConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Config\\PoolConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 1 => 'hasReadReplicas', 2 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', ), 1 => array ( 0 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 1 => 'getConnectionWeight', 2 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', ), 2 => array ( 0 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 1 => 'getMaxConnections', 2 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', ), 3 => array ( 0 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 1 => 'getAllWeights', 2 => 'App\\Framework\\Database\\Config\\ReadWriteConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\ConnectionInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\ConnectionMetadata', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 1 => 'getCriteria', 2 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', ), 1 => array ( 0 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 1 => 'getProjection', 2 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', ), 2 => array ( 0 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 1 => 'getOrders', 2 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', ), 3 => array ( 0 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 1 => 'getMaxResults', 2 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', ), 4 => array ( 0 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 1 => 'getFirstResult', 2 => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 1 => 'toSql', 2 => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', ), 1 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 1 => 'toSql', 2 => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', ), 1 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Order.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Order', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Order', 1 => 'toSql', 2 => 'App\\Framework\\Database\\Criteria\\Order', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 1 => 'toSql', 2 => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', ), 1 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 1 => 'getAliases', 2 => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', 1 => 'toSql', 2 => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 1 => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', 1 => 'getAliases', 2 => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projections', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Restrictions', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'add', 2 => 56, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'add', 2 => 66, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'add', 2 => 75, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\DatabaseManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\DatabaseManager', 1 => 'isProfilingEnabled', 2 => 'App\\Framework\\Database\\DatabaseManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Driver\\DriverConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Driver\\MysqlDriver', 1 => 'getOptions', 2 => 'App\\Framework\\Database\\Driver\\MysqlDriver', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Driver\\PostgresDriver', 1 => 'getOptions', 2 => 'App\\Framework\\Database\\Driver\\PostgresDriver', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Driver\\SqliteDriver', 1 => 'getOptions', 2 => 'App\\Framework\\Database\\Driver\\SqliteDriver', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', 1 => 'getIdentityMap', 2 => 'App\\Framework\\Database\\EntityManager', ), 1 => array ( 0 => 'App\\Framework\\Database\\EntityManager', 1 => 'getHydrator', 2 => 'App\\Framework\\Database\\EntityManager', ), 2 => array ( 0 => 'App\\Framework\\Database\\EntityManager', 1 => 'getEntityEventManager', 2 => 'App\\Framework\\Database\\EntityManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/DomainEventCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Events\\DomainEventCollector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\DomainEventCollector', 1 => 'getEventsForEntity', 2 => 'App\\Framework\\Database\\Events\\DomainEventCollector', ), 1 => array ( 0 => 'App\\Framework\\Database\\Events\\DomainEventCollector', 1 => 'hasEventsForEntity', 2 => 'App\\Framework\\Database\\Events\\DomainEventCollector', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 1 => 'isEntityOfType', 2 => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 1 => 'isEntityOfType', 2 => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 1 => 'isEntityOfType', 2 => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Events\\EntityEventManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityEventManager', 1 => 'getDomainEventCollector', 2 => 'App\\Framework\\Database\\Events\\EntityEventManager', ), 1 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityEventManager', 1 => 'getEventDispatcher', 2 => 'App\\Framework\\Database\\Events\\EntityEventManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 28, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 47, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 61, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 1 => 'isEntityOfType', 2 => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 1 => 'isEntityOfType', 2 => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 1 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 1 => 'getOldValue', 2 => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 2 => array ( 0 => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 1 => 'getNewValue', 2 => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Events\\Examples\\EntityEventUsageExample', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'insert', 2 => 31, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'update', 2 => 37, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'insert', 2 => 59, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'saveAll', 2 => 100, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\EntityManager', ), 1 => 'insert', 2 => 118, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Examples\\AsyncDatabaseExample', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 1 => 'getAdditionalData', 2 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', 1 => 'getAllResults', 2 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', ), 1 => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', 1 => 'getLastResult', 2 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', ), 2 => array ( 0 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', 1 => 'areAllHealthy', 2 => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Hydrator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Hydrator', 1 => 'getRelationKeyValue', 2 => 'App\\Framework\\Database\\Hydrator', ), 1 => array ( 0 => 'App\\Framework\\Database\\Hydrator', 1 => 'getForeignKeyPropertyName', 2 => 'App\\Framework\\Database\\Hydrator', ), 2 => array ( 0 => 'App\\Framework\\Database\\Hydrator', 1 => 'getDefaultRelationValue', 2 => 'App\\Framework\\Database\\Hydrator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\IdentityMap', 1 => 'createKey', 2 => 'App\\Framework\\Database\\IdentityMap', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\LazyLoader', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Metadata\\EntityMetadata', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 1 => 'getProperty', 2 => 'App\\Framework\\Database\\Metadata\\EntityMetadata', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 1 => 'hasMetadata', 2 => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/PropertyMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Middleware\\CacheMiddleware', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\CacheMiddleware', 1 => 'getPriority', 2 => 'App\\Framework\\Database\\Middleware\\CacheMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\HealthCheckMiddleware', 1 => 'getPriority', 2 => 'App\\Framework\\Database\\Middleware\\HealthCheckMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 1 => 'getMiddleware', 2 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 1 => 'hasMiddleware', 2 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 2 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 1 => 'getMiddlewareByType', 2 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 32, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'add', 2 => 22, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Middleware\\QueryContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\QueryContext', 1 => 'getMetadata', 2 => 'App\\Framework\\Database\\Middleware\\QueryContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\RetryMiddleware', 1 => 'getPriority', 2 => 'App\\Framework\\Database\\Middleware\\RetryMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\UnifiedRetryMiddleware', 1 => 'getPriority', 2 => 'App\\Framework\\Database\\Middleware\\UnifiedRetryMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\MiddlewareConnection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\MiddlewareConnection', 1 => 'getPipeline', 2 => 'App\\Framework\\Database\\MiddlewareConnection', ), 1 => array ( 0 => 'App\\Framework\\Database\\MiddlewareConnection', 1 => 'getBaseConnection', 2 => 'App\\Framework\\Database\\MiddlewareConnection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'process', 2 => 67, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'process', 2 => 76, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', ), 1 => 'process', 2 => 85, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\AbstractDependentMigration', 1 => 'getDependencies', 2 => 'App\\Framework\\Database\\Migration\\AbstractDependentMigration', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\ApplyMigrations', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\Commands\\MakeMigrationCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\Commands\\MakeMigrationFromDiffCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Database\\Migration\\MigrationCollection', ), 1 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationCollection', 1 => 'toArray', 2 => 'App\\Framework\\Database\\Migration\\MigrationCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 150, ), 1 => array ( 0 => 'usort', 1 => 163, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationDependencyGraph', 1 => 'getDependencies', 2 => 'App\\Framework\\Database\\Migration\\MigrationDependencyGraph', ), 1 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationDependencyGraph', 1 => 'hasDependencies', 2 => 'App\\Framework\\Database\\Migration\\MigrationDependencyGraph', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationGenerator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationGenerator', 1 => 'generateMigrationContent', 2 => 'App\\Framework\\Database\\Migration\\MigrationGenerator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationLoader', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Transaction', 1 => 'run', 2 => 70, ), 1 => array ( 0 => 'App\\Framework\\Database\\Transaction', 1 => 'run', 2 => 159, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationStatus', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationStatus', 1 => 'isApplied', 2 => 'App\\Framework\\Database\\Migration\\MigrationStatus', ), 1 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationStatus', 1 => 'isPending', 2 => 'App\\Framework\\Database\\Migration\\MigrationStatus', ), 2 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationStatus', 1 => 'getStatusIcon', 2 => 'App\\Framework\\Database\\Migration\\MigrationStatus', ), 3 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationStatus', 1 => 'getStatusText', 2 => 'App\\Framework\\Database\\Migration\\MigrationStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersion.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationVersion', 1 => '__toString', 2 => 'App\\Framework\\Database\\Migration\\MigrationVersion', ), 1 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationVersion', 1 => 'toString', 2 => 'App\\Framework\\Database\\Migration\\MigrationVersion', ), 2 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationVersion', 1 => 'compare', 2 => 'App\\Framework\\Database\\Migration\\MigrationVersion', ), 3 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationVersion', 1 => 'equals', 2 => 'App\\Framework\\Database\\Migration\\MigrationVersion', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 1 => 'containsString', 2 => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', ), 1 => array ( 0 => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 1 => 'toArray', 2 => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 96, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Commands\\DatabaseHealthCheckCommand', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Commands\\DatabaseHealthCheckCommand', 1 => 'formatStatus', 2 => 'App\\Framework\\Database\\Monitoring\\Commands\\DatabaseHealthCheckCommand', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/LogQueryStatisticsCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Commands\\LogQueryStatisticsCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', 1 => 'formatHourlyStatsForChart', 2 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', ), 1 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', 1 => 'formatDailyStatsForChart', 2 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', ), 2 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', 1 => 'formatQueryTrendForChart', 2 => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 1 => 'getChecks', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', ), 1 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 1 => 'getErrors', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', ), 2 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 1 => 'getConnection', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', ), 3 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 1 => 'getTimestamp', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', ), 4 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 1 => 'hasErrors', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', 1 => 'isOk', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 1 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', 1 => 'isWarning', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 2 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', 1 => 'isError', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 3 => array ( 0 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', 1 => 'toArray', 2 => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\PdoConnection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\PdoConnection', 1 => 'getPdo', 2 => 'App\\Framework\\Database\\PdoConnection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\PdoResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\PooledConnection', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 1 => 'getEventName', 2 => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfileSummary', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 1 => 'getMostCommonQueryType', 2 => 'App\\Framework\\Database\\Profiling\\ProfileSummary', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingConfig', 1 => 'isFeatureEnabled', 2 => 'App\\Framework\\Database\\Profiling\\ProfilingConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 1 => 'isProfilingEnabled', 2 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', ), 1 => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 1 => 'getProfiler', 2 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', ), 2 => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 1 => 'getLogger', 2 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', ), 3 => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 1 => 'getConnection', 2 => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 145, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', 1 => 'getAnalysisGrade', 2 => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', ), 1 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', 1 => 'getOptimizationPriority', 2 => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryAnalyzer', 1 => 'getOverallAssessment', 2 => 'App\\Framework\\Database\\Profiling\\QueryAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 358, ), 1 => array ( 0 => 'arsort', 1 => 359, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryLogger', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryLogger', 1 => 'getLoggedQueries', 2 => 'App\\Framework\\Database\\Profiling\\QueryLogger', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryProfile', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryProfile', 1 => 'isSuccessful', 2 => 'App\\Framework\\Database\\Profiling\\QueryProfile', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 1 => 'getProfiles', 2 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', ), 1 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 1 => 'isProfilingActive', 2 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', ), 2 => array ( 0 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 1 => 'getSlowQueryThreshold', 2 => 'App\\Framework\\Database\\Profiling\\QueryProfiler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 1 => 'getConnectionsByPriority', 2 => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 61, ), 1 => array ( 0 => 'uasort', 1 => 105, ), 2 => array ( 0 => 'usort', 1 => 156, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 67, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\SlowQueryAlert', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 314, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 88, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Profiling\\SlowQueryPattern', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Profiling\\SlowQueryPattern', 1 => 'getSeverity', 2 => 'App\\Framework\\Database\\Profiling\\SlowQueryPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\Examples\\QueryBuilderUsageExample', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', ), 1 => 'limit', 2 => 542, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', ), 1 => 'limit', 2 => 553, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor', 1 => 'getQueryTypeMetrics', 2 => 'App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\ReadWriteConnection', 1 => 'getWriteConnection', 2 => 'App\\Framework\\Database\\ReadWriteConnection', ), 1 => array ( 0 => 'App\\Framework\\Database\\ReadWriteConnection', 1 => 'getReadConnections', 2 => 'App\\Framework\\Database\\ReadWriteConnection', ), 2 => array ( 0 => 'App\\Framework\\Database\\ReadWriteConnection', 1 => 'hasAdvancedRouting', 2 => 'App\\Framework\\Database\\ReadWriteConnection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'nullable', 2 => 214, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'nullable', 2 => 215, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/AlterTableCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/CreateTableCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropTableCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RawCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RenameColumnCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RenameTableCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Commands\\SchemaDiffCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator', 1 => 'generateDropTableCode', 2 => 'App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', 1 => 'convertPostgreSqlRule', 2 => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'ksort', 1 => 467, ), 1 => array ( 0 => 'ksort', 1 => 606, ), 2 => array ( 0 => 'ksort', 1 => 660, ), 3 => array ( 0 => 'ksort', 1 => 661, ), 4 => array ( 0 => 'ksort', 1 => 739, ), 5 => array ( 0 => 'ksort', 1 => 780, ), 6 => array ( 0 => 'ksort', 1 => 781, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaDifference.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaDifference', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaDifference', 1 => 'hasDifferences', 2 => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaDifference', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/TableDifference.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\TableDifference', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Comparison\\TableDifference', 1 => 'hasDifferences', 2 => 'App\\Framework\\Database\\Schema\\Comparison\\TableDifference', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\ForeignKeyDefinition', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexDefinition.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', 1 => 'toMySqlIndex', 2 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', ), 1 => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', 1 => 'toSqliteIndex', 2 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 1 => 'getDescription', 2 => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 325, ), 1 => array ( 0 => 'preg_match_all', 1 => 350, ), 2 => array ( 0 => 'preg_match_all', 1 => 386, ), 3 => array ( 0 => 'preg_match_all', 1 => 415, ), 4 => array ( 0 => 'preg_match_all', 1 => 522, ), 5 => array ( 0 => 'preg_match_all', 1 => 806, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexUsageAnalyzer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/MySQLIndex.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 1 => 'getDefinition', 2 => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/PostgreSQLIndex.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 1 => 'getDefinition', 2 => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/SQLiteIndex.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', 1 => 'getDefinition', 2 => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\IndexDefinition', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', 1 => 'compileDropTable', 2 => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', ), 1 => array ( 0 => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', 1 => 'compileRenameTable', 2 => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', ), 2 => array ( 0 => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', 1 => 'compileRenameColumn', 2 => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', 1 => 'compileDropTable', 2 => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', ), 1 => array ( 0 => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', 1 => 'compileRenameTable', 2 => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', ), 2 => array ( 0 => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', 1 => 'compileRenameColumn', 2 => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', 1 => 'compileDropTable', 2 => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', ), 1 => array ( 0 => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', 1 => 'compileRenameTable', 2 => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', ), 2 => array ( 0 => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', 1 => 'compileRenameColumn', 2 => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Schema\\Schema', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\Serialization\\EntitySerializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/SimpleIdGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\SimpleIdGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\ResultMapper', 1 => 'AnonymousClasse7654bcfdd1708859a0e4c7f686aa914', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'AnonymousClasse7654bcfdd1708859a0e4c7f686aa914', 1 => 'getType', 2 => 'class@anonymous/Framework/Database/StoredProcedure/ResultMapper.php:172', ), 1 => array ( 0 => 'AnonymousClasse7654bcfdd1708859a0e4c7f686aa914', 1 => 'getName', 2 => 'class@anonymous/Framework/Database/StoredProcedure/ResultMapper.php:172', ), 2 => array ( 0 => 'AnonymousClasse7654bcfdd1708859a0e4c7f686aa914', 1 => 'isNullable', 2 => 'class@anonymous/Framework/Database/StoredProcedure/ResultMapper.php:172', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureDefinition.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 1 => 'getName', 2 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', ), 1 => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 1 => 'getParameters', 2 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', ), 2 => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 1 => 'getBody', 2 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', ), 3 => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 1 => 'getReturnType', 2 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', ), 4 => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 1 => 'isFunction', 2 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\TypeCaster\\EmailCaster', 1 => 'supports', 2 => 'App\\Framework\\Database\\TypeCaster\\EmailCaster', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\TypeCaster\\JsonCaster', 1 => 'supports', 2 => 'App\\Framework\\Database\\TypeCaster\\JsonCaster', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\TypeCaster\\PhoneNumberCaster', 1 => 'supports', 2 => 'App\\Framework\\Database\\TypeCaster\\PhoneNumberCaster', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\TypeConverter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\BulkOperations', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\BulkOperations', 1 => 'groupEntitiesByClass', 2 => 'App\\Framework\\Database\\UnitOfWork\\BulkOperations', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', 1 => 'getEntityState', 2 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', ), 1 => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', 1 => 'getEntitiesByState', 2 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', ), 2 => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', 1 => 'hasAnyChanges', 2 => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', 1 => 'isAutoCommit', 2 => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\DateTime\\ClockInitializer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DateTime\\ClockInitializer', 1 => 'initTimer', 2 => 'App\\Framework\\DateTime\\ClockInitializer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DateTime\\DateRange', 1 => 'getStart', 2 => 'App\\Framework\\DateTime\\DateRange', ), 1 => array ( 0 => 'App\\Framework\\DateTime\\DateRange', 1 => 'getEnd', 2 => 'App\\Framework\\DateTime\\DateRange', ), 2 => array ( 0 => 'App\\Framework\\DateTime\\DateRange', 1 => 'contains', 2 => 'App\\Framework\\DateTime\\DateRange', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTimeFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DateTime\\DateTimeFormatter', 1 => 'getTimezone', 2 => 'App\\Framework\\DateTime\\DateTimeFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DateTime\\FrozenClock', 1 => 'now', 2 => 'App\\Framework\\DateTime\\FrozenClock', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClockInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\DateTime\\HighResolutionClockInitializer', 1 => '__invoke', 2 => 'App\\Framework\\DateTime\\HighResolutionClockInitializer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getData', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 1 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getLabel', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 2 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getFile', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 3 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getLine', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 4 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getTimestamp', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 5 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getMemory', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 6 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getPeakMemory', 2 => 'App\\Framework\\Debug\\DebugEntry', ), 7 => array ( 0 => 'App\\Framework\\Debug\\DebugEntry', 1 => 'getType', 2 => 'App\\Framework\\Debug\\DebugEntry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Debug\\DebugRegistry', 1 => 'getEntries', 2 => 'App\\Framework\\Debug\\DebugRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', 1 => 'getStyles', 2 => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 115, ), 1 => array ( 0 => 'usort', 1 => 149, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ColorAnalyzer', 1 => 'calculateLightness', 2 => 'App\\Framework\\Design\\Analyzer\\ColorAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 234, ), 1 => array ( 0 => 'uasort', 1 => 270, ), 2 => array ( 0 => 'usort', 1 => 304, ), 3 => array ( 0 => 'usort', 1 => 345, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ComponentDetector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ComponentDetector', 1 => 'assessComponentPotential', 2 => 'App\\Framework\\Design\\Analyzer\\ComponentDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 210, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 1 => 'getViolationsBySeverity', 2 => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', ), 1 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 1 => 'getAreaImprovementAction', 2 => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'asort', 1 => 48, ), 1 => array ( 0 => 'arsort', 1 => 60, ), 2 => array ( 0 => 'uasort', 1 => 121, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ConventionChecker', 1 => 'getCategoryRecommendation', 2 => 'App\\Framework\\Design\\Analyzer\\ConventionChecker', ), 1 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\ConventionChecker', 1 => 'getConformanceLevel', 2 => 'App\\Framework\\Design\\Analyzer\\ConventionChecker', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis', 1 => 'getNextMaturityLevel', 2 => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 36, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\TokenAnalyzer', 1 => 'groupTokensByType', 2 => 'App\\Framework\\Design\\Analyzer\\TokenAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Design\\Analyzer\\TokenAnalyzer', 1 => 'findUnusedTokens', 2 => 'App\\Framework\\Design\\Analyzer\\TokenAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/Component.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Component\\Component', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Component\\Component', 1 => 'generateCardPreview', 2 => 'App\\Framework\\Design\\Component\\Component', ), 1 => array ( 0 => 'App\\Framework\\Design\\Component\\Component', 1 => 'generateLayoutPreview', 2 => 'App\\Framework\\Design\\Component\\Component', ), 2 => array ( 0 => 'App\\Framework\\Design\\Component\\Component', 1 => 'generateDefaultPreview', 2 => 'App\\Framework\\Design\\Component\\Component', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentCategory.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentCategory', 1 => 'getDisplayName', 2 => 'App\\Framework\\Design\\Component\\ComponentCategory', ), 1 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentCategory', 1 => 'getIcon', 2 => 'App\\Framework\\Design\\Component\\ComponentCategory', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentPattern', 1 => 'getDisplayName', 2 => 'App\\Framework\\Design\\Component\\ComponentPattern', ), 1 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentPattern', 1 => 'getDescription', 2 => 'App\\Framework\\Design\\Component\\ComponentPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentRegistry', 1 => 'getAllComponents', 2 => 'App\\Framework\\Design\\Component\\ComponentRegistry', ), 1 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentRegistry', 1 => 'findByName', 2 => 'App\\Framework\\Design\\Component\\ComponentRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentState.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentState', 1 => 'getDisplayName', 2 => 'App\\Framework\\Design\\Component\\ComponentState', ), 1 => array ( 0 => 'App\\Framework\\Design\\Component\\ComponentState', 1 => 'getCssClass', 2 => 'App\\Framework\\Design\\Component\\ComponentState', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 60, ), 1 => array ( 0 => 'preg_match', 1 => 154, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Initializer\\DesignSystemInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 25, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Parser\\CssParseResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Parser\\CssParser', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 115, ), 1 => array ( 0 => 'preg_match_all', 1 => 166, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 22, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Service\\ColorAnalyzer', 1 => 'calculateContrastRatio', 2 => 'App\\Framework\\Design\\Service\\ColorAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Service\\ConventionChecker', 1 => 'suggestImprovedName', 2 => 'App\\Framework\\Design\\Service\\ConventionChecker', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\Service\\DesignSystemAnalyzer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\Service\\TokenAnalyzer', 1 => 'analyzeTokenUsage', 2 => 'App\\Framework\\Design\\Service\\TokenAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Design\\Service\\TokenAnalyzer', 1 => 'generateUsageExample', 2 => 'App\\Framework\\Design\\Service\\TokenAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Design\\Service\\TokenAnalyzer', 1 => 'mapCategoryToTokenType', 2 => 'App\\Framework\\Design\\Service\\TokenAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 295, ), 1 => array ( 0 => 'sort', 1 => 326, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 1 => 'hasClass', 2 => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 1 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 1 => 'getBemCompleteness', 2 => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClass.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssClass', 1 => 'toString', 2 => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClassName.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssClassName', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssClassName', 1 => 'toString', 2 => 'App\\Framework\\Design\\ValueObjects\\CssClassName', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssColor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssColor', 1 => 'isCustomProperty', 2 => 'App\\Framework\\Design\\ValueObjects\\CssColor', ), 1 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssColor', 1 => 'getCustomPropertyName', 2 => 'App\\Framework\\Design\\ValueObjects\\CssColor', ), 2 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssColor', 1 => 'toString', 2 => 'App\\Framework\\Design\\ValueObjects\\CssColor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 1 => 'getAllSelectors', 2 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 1 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 1 => 'getAllProperties', 2 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 2 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 1 => 'getDominantConvention', 2 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 3 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 1 => 'getTokenTypeStats', 2 => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssProperty', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 1 => 'toString', 2 => 'App\\Framework\\Design\\ValueObjects\\CssProperty', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 97, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssRule', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssRule', 1 => 'getProperty', 2 => 'App\\Framework\\Design\\ValueObjects\\CssRule', ), 1 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssRule', 1 => 'hasSelector', 2 => 'App\\Framework\\Design\\ValueObjects\\CssRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssSelector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 1 => 'toString', 2 => 'App\\Framework\\Design\\ValueObjects\\CssSelector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 30, ), 1 => array ( 0 => 'preg_match_all', 1 => 34, ), 2 => array ( 0 => 'preg_match_all', 1 => 37, ), 3 => array ( 0 => 'preg_match_all', 1 => 40, ), 4 => array ( 0 => 'preg_match_all', 1 => 45, ), 5 => array ( 0 => 'preg_match_all', 1 => 85, ), 6 => array ( 0 => 'preg_match_all', 1 => 96, ), 7 => array ( 0 => 'preg_match_all', 1 => 108, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CustomProperty.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 1 => 'getSizeValue', 2 => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', ), 1 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 1 => 'getNumberValue', 2 => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\DesignToken', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 1 => 'toCssVar', 2 => 'App\\Framework\\Design\\ValueObjects\\DesignToken', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Cache\\RegistryCacheManager', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Cache\\RegistryCacheManager', ), 1 => 'invalidate', 2 => 87, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Cache\\RegistryCacheManager', ), 1 => 'invalidate', 2 => 135, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Commands\\ClearDiscoveryCache', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 1 => 'getAttributeRegistry', 2 => 'App\\Framework\\Discovery\\DiscoveryDataCollector', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 1 => 'getInterfaceRegistry', 2 => 'App\\Framework\\Discovery\\DiscoveryDataCollector', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 1 => 'getTemplateRegistry', 2 => 'App\\Framework\\Discovery\\DiscoveryDataCollector', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\DiscoveryServiceBootstrapper', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 1 => 'getEffectiveness', 2 => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 1 => 'wasBeneficial', 2 => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheEvictionEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheEvictionEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 1 => 'getReasonCategory', 2 => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 1 => 'getProgressPercentage', 2 => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 1 => 'getChunkProgressPercentage', 2 => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 1 => 'hasPartialResults', 2 => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\EventAggregator', 1 => 'getStatistics', 2 => 'App\\Framework\\Discovery\\Events\\EventAggregator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 56, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 57, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 58, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 59, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'listen', 2 => 60, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\FileProcessedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 1 => 'getCleanupType', 2 => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 1 => 'requiresImmediateAction', 2 => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 1 => 'getRecommendedActions', 2 => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 1 => 'isCritical', 2 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 1 => 'isWarning', 2 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 1 => 'getRecommendedAction', 2 => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 1 => 'isStrategyDowngrade', 2 => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/RecoverableDiscoveryException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 1 => 'tooManyOpenFiles', 2 => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 1 => 'temporaryFilesystemError', 2 => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', 1 => 'getWorseStatusString', 2 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', 1 => 'getName', 2 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', 1 => 'getCategory', 2 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', 1 => 'getTimeout', 2 => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\InitializerProcessor', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\DI\\MethodInvoker', ), 1 => 'invoke', 2 => 74, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\BatchParameters', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 1 => 'getCurrentStrategy', 2 => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 1 => 'calculateLeakSeverity', 2 => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'opcache_reset', 1 => 169, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 85, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 188, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 260, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', ), 1 => 'performCleanup', 2 => 285, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 346, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\GuardResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\GuardStatistics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryCleanupResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\MemoryCleanupResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\MemoryLeakInfo', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\MemoryGuard', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\MemoryGuard', 1 => 'getDetectedLeaks', 2 => 'App\\Framework\\Discovery\\MemoryGuard', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 171, ), 1 => array ( 0 => 'gc_collect_cycles', 1 => 172, ), 2 => array ( 0 => 'gc_mem_caches', 1 => 176, ), 3 => array ( 0 => 'gc_collect_cycles', 1 => 190, ), 4 => array ( 0 => 'opcache_reset', 1 => 196, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\MemoryGuard', ), 1 => 'protect', 2 => 148, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', 1 => 'getName', 2 => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', 1 => 'getVisitors', 2 => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', 1 => 'isEnabled', 2 => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', 1 => 'getName', 2 => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', 1 => 'getVisitors', 2 => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', 1 => 'isEnabled', 2 => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 243, ), 1 => array ( 0 => 'usort', 1 => 279, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 460, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ChunkCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ChunkCollection', 1 => 'getChunks', 2 => 'App\\Framework\\Discovery\\Processing\\ChunkCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\FileAnalysis', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 55, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', 1 => 'getFiles', 2 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', 1 => 'getTotalSize', 2 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', 1 => 'getComplexity', 2 => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 1 => 'getCurrentFileContext', 2 => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 103, ), 1 => array ( 0 => 'gc_collect_cycles', 1 => 129, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', 1 => 'isComplete', 2 => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', 1 => 'getSuccessRate', 2 => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator', 1 => 'checkDiscoveryTime', 2 => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator', 1 => 'checkCacheHitRate', 2 => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler', 1 => 'tryGetCachedResult', 2 => 'App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 426, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'pcntl_signal', 1 => 77, ), 1 => array ( 0 => 'pcntl_alarm', 1 => 85, ), 2 => array ( 0 => 'pcntl_alarm', 1 => 91, ), 3 => array ( 0 => 'pcntl_alarm', 1 => 100, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 1 => 'get', 2 => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 1 => 'has', 2 => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 1 => 'attributes', 2 => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 1 => 'toArray', 2 => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 1 => 'getAllMappings', 2 => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 1 => 'getAll', 2 => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 1 => 'calculateCompressionRatio', 2 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 1 => 'performSelectiveEviction', 2 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', ), 1 => 'invalidate', 2 => 102, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', ), 1 => 'clearAll', 2 => 298, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage', 1 => 'registerFileSystemEvents', 2 => 'App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'AnonymousClassd92c5e910ba193251295144d3550e386', 2 => 'AnonymousClasse954c9a35433be71428b5784c3940956', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'generateTestControllerContent', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'generateTestServiceContent', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'generateTestModelContent', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'generateTestInterfaceContent', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'generateTestCaseContent', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 5 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'generateLargeClassContent', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 6 => array ( 0 => 'AnonymousClassd92c5e910ba193251295144d3550e386', 1 => 'get', 2 => 'App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527', ), 7 => array ( 0 => 'AnonymousClassd92c5e910ba193251295144d3550e386', 1 => 'set', 2 => 'App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527', ), 8 => array ( 0 => 'AnonymousClassd92c5e910ba193251295144d3550e386', 1 => 'forget', 2 => 'App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527', ), 9 => array ( 0 => 'AnonymousClassd92c5e910ba193251295144d3550e386', 1 => 'flush', 2 => 'App\\Framework\\Cache\\Cache@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:527', ), 10 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'createMockCache', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 11 => array ( 0 => 'AnonymousClasse954c9a35433be71428b5784c3940956', 1 => 'getBasePath', 2 => 'class@anonymous/Framework/Discovery/Testing/DiscoveryTestHelper.php:559', ), 12 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'createMockPathProvider', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 13 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 1 => 'createMockReflectionProvider', 2 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 1 => 'createTestFileStructure', 2 => 311, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', ), 1 => 'createTestFileStructure', 2 => 493, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 1 => 'getProcessedFileCount', 2 => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 194, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', ), 1 => 'store', 2 => 309, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', ), 1 => 'discoverWithOptions', 2 => 342, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', ), 1 => 'processDirectories', 2 => 554, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', ), 1 => 'check', 2 => 761, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\AttributeCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\AttributeCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Discovery\\ValueObjects\\AttributeCollection', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\AttributeCollection', 1 => 'toArray', 2 => 'App\\Framework\\Discovery\\ValueObjects\\AttributeCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 1 => 'fromMemoryPressure', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 1 => 'getRetentionMultiplier', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 1 => 'requiresCompression', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 1 => 'getDefaultCompressionLevel', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 1 => 'getDescription', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 5 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 1 => 'isMoreAggressiveThan', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'suggest', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'orderedByPriority', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getMemoryEfficientTiers', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getCompressionLevel', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getTtlMultiplier', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 5 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getExpectedAccessFrequency', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 6 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getMaxItemSize', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 7 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getPriority', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 8 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getHigherTier', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 9 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getLowerTier', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 10 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'isRecommendedUnderMemoryPressure', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 11 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'getDescription', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), 12 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 1 => 'toCacheLevel', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CompressionLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 1 => 'suggest', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 1 => 'getGzipLevel', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 1 => 'getExpectedRatio', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 1 => 'getCpuCostMultiplier', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 1 => 'getMinimumDataSize', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 5 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 1 => 'getDescription', 2 => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 1 => 'isClassAttribute', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 1 => 'isMethodAttribute', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 1 => 'isPropertyAttribute', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryConfiguration.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 1 => 'getMemoryLimitBytes', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 1 => 'isFeatureEnabled', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 1 => 'getProcessedFiles', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 1 => 'getMetrics', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 1 => 'isIncremental', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 1 => 'shouldUseCache', 2 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 1 => 'getClassNames', 2 => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 1 => 'hasClasses', 2 => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/InterfaceMapping.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'suggestForSystem', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'suggestForDiscovery', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'getDefaultChunkSize', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'getMemoryPressureThreshold', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'getCleanupFrequency', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 5 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'supportsDynamicAdjustment', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 6 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 1 => 'getDescription', 2 => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ReflectionContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ReflectionContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', 1 => 'getDescription', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', 1 => 'getRecommendedChunkSize', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', 1 => 'useParallelProcessing', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', 1 => 'useFiberProcessing', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', 1 => 'getPriorityDirectories', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 1 => 'getDescription', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 1 => 'requiresCache', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 1 => 'isQuick', 2 => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', 1 => 'findExact', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', 1 => 'findByName', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', ), 3 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', 1 => 'first', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', ), 4 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', 1 => 'toArray', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 249, ), 1 => array ( 0 => 'usort', 1 => 260, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 1 => 'getUniqueId', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 1 => 'isSameAs', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 2 => array ( 0 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 1 => 'isType', 2 => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Discovery\\Visitors\\AttributeVisitor', 1 => 'getType', 2 => 'App\\Framework\\Discovery\\Visitors\\AttributeVisitor', ), 1 => array ( 0 => 'App\\Framework\\Discovery\\Visitors\\AttributeVisitor', 1 => 'getRegistry', 2 => 'App\\Framework\\Discovery\\Visitors\\AttributeVisitor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Email\\CssInliner', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 91, ), 1 => array ( 0 => 'usort', 1 => 243, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Email\\EmailContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Email\\EmailContext', 1 => 'getData', 2 => 'App\\Framework\\Email\\EmailContext', ), 1 => array ( 0 => 'App\\Framework\\Email\\EmailContext', 1 => 'get', 2 => 'App\\Framework\\Email\\EmailContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Email\\EmailService', 1 => 'getCompanyName', 2 => 'App\\Framework\\Email\\EmailService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Email\\EmailTemplateRenderer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/ValueObjects/EmailContent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Email\\ValueObjects\\EmailContent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Email\\ValueObjects\\EmailContent', 1 => 'hasMultipart', 2 => 'App\\Framework\\Email\\ValueObjects\\EmailContent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/ValueObjects/EmailSubject.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Email\\ValueObjects\\EmailSubject', 1 => '__toString', 2 => 'App\\Framework\\Email\\ValueObjects\\EmailSubject', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Encryption\\AesEncryption', 1 => 'getMethod', 2 => 'App\\Framework\\Encryption\\AesEncryption', ), 1 => array ( 0 => 'App\\Framework\\Encryption\\AesEncryption', 1 => 'getMetadata', 2 => 'App\\Framework\\Encryption\\AesEncryption', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Encryption\\BasicEncryption', 1 => 'getMethod', 2 => 'App\\Framework\\Encryption\\BasicEncryption', ), 1 => array ( 0 => 'App\\Framework\\Encryption\\BasicEncryption', 1 => 'getMetadata', 2 => 'App\\Framework\\Encryption\\BasicEncryption', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Encryption\\EncryptionFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', 1 => 'getEscalationTimeout', 2 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', ), 1 => array ( 0 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', 1 => 'getNotificationChannels', 2 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', ), 2 => array ( 0 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', 1 => 'getRetryStrategy', 2 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', ), 3 => array ( 0 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', 1 => 'getMaxDelay', 2 => 'App\\Framework\\ErrorAggregation\\AlertUrgency', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Alerting\\AlertManager', 1 => 'testChannels', 2 => 'App\\Framework\\ErrorAggregation\\Alerting\\AlertManager', ), 1 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Alerting\\AlertManager', 1 => 'getThrottleWindow', 2 => 'App\\Framework\\ErrorAggregation\\Alerting\\AlertManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', 1 => 'getName', 2 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', ), 1 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', 1 => 'canHandle', 2 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', ), 2 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', 1 => 'getLastDeliveryStatus', 2 => 'App\\Framework\\ErrorAggregation\\Alerting\\EmailAlertChannel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\Commands\\AlertCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\Commands\\ErrorAggregationStatsCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\Commands\\ErrorPatternsCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorAggregationMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorAggregator', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorAggregator', ), 1 => 'updateErrorPattern', 2 => 239, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorEvent', 1 => 'extractUserMessage', 2 => 'App\\Framework\\ErrorAggregation\\ErrorEvent', ), 1 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorEvent', 1 => 'getAlertUrgency', 2 => 'App\\Framework\\ErrorAggregation\\ErrorEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorPattern', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorPattern', 1 => 'getAlertThreshold', 2 => 'App\\Framework\\ErrorAggregation\\ErrorPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorSeverity.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', 1 => 'getPriority', 2 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', ), 1 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', 1 => 'getColor', 2 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', ), 2 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', 1 => 'getIcon', 2 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', ), 3 => array ( 0 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', 1 => 'getRetentionDays', 2 => 'App\\Framework\\ErrorAggregation\\ErrorSeverity', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Migrations\\Migration_2024_01_24_140000_CreateErrorEventsTable', 1 => 'getDescription', 2 => 'App\\Framework\\ErrorAggregation\\Migrations\\Migration_2024_01_24_140000_CreateErrorEventsTable', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 23, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 26, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 27, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 28, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 29, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 32, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 33, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 34, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 37, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 38, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 41, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 42, ), 12 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 43, ), 13 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 44, ), 14 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 47, ), 15 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 48, ), 16 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 51, ), 17 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 52, ), 18 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 53, ), 19 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 54, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorAggregation\\Migrations\\Migration_2024_01_24_141000_CreateErrorPatternsTable', 1 => 'getDescription', 2 => 'App\\Framework\\ErrorAggregation\\Migrations\\Migration_2024_01_24_141000_CreateErrorPatternsTable', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 23, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 26, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 29, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 30, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 31, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 32, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 35, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 36, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 39, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 40, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 41, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 44, ), 12 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 45, ), 13 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 48, ), 14 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 49, ), 15 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 50, ), 16 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 51, ), 17 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 52, ), 18 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'comment', 2 => 55, ), 19 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 58, ), 20 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 59, ), 21 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 60, ), 22 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 61, ), 23 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 62, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorAggregation\\Storage\\DatabaseErrorStorage', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException', 1 => 'getBoundaryName', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException', 1 => 'getOriginalException', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException', 1 => 'getFallbackException', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBoundaryFailedException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'hasSuccesses', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'isCompleteSuccess', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'getSuccessfulResults', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'getErrors', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'getError', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 5 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'getResult', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 6 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'hasError', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), 7 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', 1 => 'hasResult', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncBulkResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundary', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundary', 1 => 'shouldRetry', 2 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundary', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Async\\AsyncErrorBoundaryFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryFailedException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'singleFailure', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'doubleFailure', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'getBoundaryName', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'getOriginalException', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'getFallbackException', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), 5 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'isDoubleFailure', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), 6 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', 1 => 'getAllExceptions', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryFailedException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', 1 => 'isSuccess', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', 1 => 'isFailure', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', 1 => 'getError', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', 1 => 'getBoundaryName', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', 1 => 'getValueOrDefault', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryTimeoutException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', 1 => 'withLimit', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', 1 => 'withoutLimit', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', 1 => 'getBoundaryName', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', 1 => 'getExecutionTime', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', 1 => 'getTimeoutLimit', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', ), 5 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', 1 => 'isHardTimeout', 2 => 'App\\Framework\\ErrorBoundaries\\BoundaryTimeoutException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getResults', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getErrors', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getProcessedCount', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getTotalCount', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getSkippedCount', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 5 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'wasTerminatedEarly', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 6 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getResult', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), 7 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\BulkResult', 1 => 'getError', 2 => 'App\\Framework\\ErrorBoundaries\\BulkResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', 1 => 'isOpen', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', 1 => 'isClosed', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', 1 => 'isHalfOpen', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', 1 => 'exceedsFailureThreshold', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', 1 => 'meetsSuccessThreshold', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), 5 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', 1 => 'exceedsHalfOpenAttempts', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitBreakerState', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitState.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitState', 1 => 'getDescription', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitState', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitState', 1 => 'allowsOperations', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitState', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitState', 1 => 'getSeverity', 2 => 'App\\Framework\\ErrorBoundaries\\CircuitBreaker\\BoundaryCircuitState', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Commands\\BoundaryCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\ErrorBoundary', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerRecovered', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerRecovered', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerTripped', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryCircuitBreakerTripped', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryEventPublisher', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionFailed', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionFailed', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionSucceeded', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryExecutionSucceeded', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryFallbackExecuted', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryFallbackExecuted', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryTimeoutOccurred', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Events\\BoundaryTimeoutOccurred', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryHealthStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', 1 => 'getDescription', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', 1 => 'getSeverity', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', ), 2 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', 1 => 'getColor', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', ), 3 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', 1 => 'getEmoji', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', ), 4 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', 1 => 'requiresAttention', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', ), 5 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', 1 => 'shouldAlert', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryHealthStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryMetrics', 1 => 'hasFrequentCircuitBreakerTrips', 2 => 'App\\Framework\\ErrorBoundaries\\Metrics\\BoundaryMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ApiErrorBoundaryMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware', 1 => 'getMonitoredBoundaries', 2 => 'App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware', 1 => 'getRecommendationForBoundary', 2 => 'App\\Framework\\ErrorBoundaries\\Middleware\\CircuitBreakerHealthMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware', 1 => 'getFallbackHtmlContent', 2 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry', 1 => 'getMonitoredBoundaries', 2 => 'App\\Framework\\ErrorBoundaries\\Middleware\\ErrorBoundaryMiddlewareRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareConfiguration', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareServiceProvider', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareServiceProvider', 1 => 'getDefaultMonitoredBoundaries', 2 => 'App\\Framework\\ErrorBoundaries\\Middleware\\MiddlewareServiceProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/RetryStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\RetryStrategy', 1 => 'getDescription', 2 => 'App\\Framework\\ErrorBoundaries\\RetryStrategy', ), 1 => array ( 0 => 'App\\Framework\\ErrorBoundaries\\RetryStrategy', 1 => 'hasJitter', 2 => 'App\\Framework\\ErrorBoundaries\\RetryStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/CliErrorHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\CliErrorHandler', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\CliErrorHandler', 1 => 'getErrorType', 2 => 'App\\Framework\\ErrorHandling\\CliErrorHandler', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\CliErrorHandler', 1 => 'getErrorColor', 2 => 'App\\Framework\\ErrorHandling\\CliErrorHandler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'set_error_handler', 1 => 22, ), 1 => array ( 0 => 'set_exception_handler', 1 => 23, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/DummyTemplateRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\DummyTemplateRenderer', 1 => 'render', 2 => 'App\\Framework\\ErrorHandling\\DummyTemplateRenderer', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\DummyTemplateRenderer', 1 => 'renderPartial', 2 => 'App\\Framework\\ErrorHandling\\DummyTemplateRenderer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'set_exception_handler', 1 => 55, ), 1 => array ( 0 => 'set_error_handler', 1 => 56, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityEventHandler', ), 1 => 'handleIfSecurityException', 2 => 75, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityEventHandler', ), 1 => 'handleIfSecurityException', 2 => 112, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\ErrorLogger', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\ErrorLogger', 1 => 'determineLogLevel', 2 => 'App\\Framework\\ErrorHandling\\ErrorLogger', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\ErrorLogger', 1 => 'mapErrorLevelToFrameworkLevel', 2 => 'App\\Framework\\ErrorHandling\\ErrorLogger', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\ExceptionConverter', 1 => 'getStatusFromException', 2 => 'App\\Framework\\ErrorHandling\\ExceptionConverter', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\ExceptionConverter', 1 => 'getUserFriendlyMessage', 2 => 'App\\Framework\\ErrorHandling\\ExceptionConverter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityAlertManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityAlertManager', 1 => 'mapSeverity', 2 => 'App\\Framework\\ErrorHandling\\SecurityAlertManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityEventHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 1 => 'mapSecurityLevelToFrameworkLevel', 2 => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\StackTrace', 1 => 'getItems', 2 => 'App\\Framework\\ErrorHandling\\StackTrace', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\StackTrace', 1 => 'getOrigin', 2 => 'App\\Framework\\ErrorHandling\\StackTrace', ), 2 => array ( 0 => 'App\\Framework\\ErrorHandling\\StackTrace', 1 => 'offsetExists', 2 => 'App\\Framework\\ErrorHandling\\StackTrace', ), 3 => array ( 0 => 'App\\Framework\\ErrorHandling\\StackTrace', 1 => 'offsetGet', 2 => 'App\\Framework\\ErrorHandling\\StackTrace', ), 4 => array ( 0 => 'App\\Framework\\ErrorHandling\\StackTrace', 1 => '__toString', 2 => 'App\\Framework\\ErrorHandling\\StackTrace', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/TraceItem.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\TraceItem', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\TraceItem', 1 => 'isMethod', 2 => 'App\\Framework\\ErrorHandling\\TraceItem', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\TraceItem', 1 => 'isFunction', 2 => 'App\\Framework\\ErrorHandling\\TraceItem', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\View\\ApiErrorRenderer', 1 => 'getUserMessage', 2 => 'App\\Framework\\ErrorHandling\\View\\ApiErrorRenderer', ), 1 => array ( 0 => 'App\\Framework\\ErrorHandling\\View\\ApiErrorRenderer', 1 => 'getErrorCode', 2 => 'App\\Framework\\ErrorHandling\\View\\ApiErrorRenderer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\View\\ErrorResponseFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorHandling\\View\\ErrorTemplateRenderer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorHandling\\View\\ErrorTemplateRenderer', 1 => 'extractErrorMessage', 2 => 'App\\Framework\\ErrorHandling\\View\\ErrorTemplateRenderer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine', 1 => 'generateRecommendations', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine', ), 1 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine', 1 => 'calculateAvailabilityImpact', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ErrorAnalyticsEngine', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 251, ), 1 => array ( 0 => 'arsort', 1 => 252, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', 1 => 'isSpike', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', ), 1 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', 1 => 'isDrop', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', ), 2 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', 1 => 'isHighSeverity', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorAnomaly', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorVelocity.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', 1 => 'isIncreasing', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', ), 1 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', 1 => 'isDecreasing', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', ), 2 => array ( 0 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', 1 => 'isStable', 2 => 'App\\Framework\\ErrorReporting\\Analytics\\ValueObjects\\ErrorVelocity', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\Commands\\ErrorReportingCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\ErrorReport', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\ErrorReportCriteria', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\ErrorReporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\ErrorReportingMiddleware', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\ErrorReporting\\RequestContextualReporter', ), 1 => 'reportThrowable', 2 => 78, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\ErrorStatistics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorReporting\\ErrorStatistics', 1 => 'getCriticalErrorCount', 2 => 'App\\Framework\\ErrorReporting\\ErrorStatistics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\ErrorReporting\\Migrations\\Migration_2024_01_25_100000_CreateErrorReportsTable', 1 => 'getDescription', 2 => 'App\\Framework\\ErrorReporting\\Migrations\\Migration_2024_01_25_100000_CreateErrorReportsTable', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'primary', 2 => 23, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 24, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 27, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'text', 2 => 28, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 29, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'text', 2 => 30, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'integer', 2 => 31, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'longText', 2 => 32, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'json', 2 => 33, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 36, ), 10 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 37, ), 11 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 40, ), 12 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'nullable', 2 => 41, ), 13 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 42, ), 14 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 43, ), 15 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 44, ), 16 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'nullable', 2 => 45, ), 17 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 48, ), 18 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'nullable', 2 => 49, ), 19 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'json', 2 => 52, ), 20 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'json', 2 => 53, ), 21 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 54, ), 22 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 55, ), 23 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'json', 2 => 56, ), 24 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'json', 2 => 57, ), 25 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 60, ), 26 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'index', 2 => 61, ), 27 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\ColumnDefinition', ), 1 => 'default', 2 => 64, ), 28 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 67, ), 29 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 68, ), 30 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 69, ), 31 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 70, ), 32 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 71, ), 33 => array ( 0 => array ( 0 => 'App\\Framework\\Database\\Schema\\Blueprint', ), 1 => 'index', 2 => 72, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\Processors\\UserContextProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\RequestContextualReporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\Storage\\DatabaseErrorReportStorage', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\ErrorReporting\\UserContextualReporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventBus\\DefaultEventBus', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventBus\\EventBusInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventBus\\EventHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\EventBus\\EventHandlerCompiler', 1 => 'getAttributeClass', 2 => 'App\\Framework\\EventBus\\EventHandlerCompiler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 64, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\EventBus\\EventHandlerMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\EventBus\\EventHandlerMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateEnvelope.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\AggregateEnvelope', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateId.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\AggregateId', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\EventSourcing\\AggregateId', 1 => '__toString', 2 => 'App\\Framework\\EventSourcing\\AggregateId', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\AggregateRootRepository', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/DefaultEventRecorder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\DefaultEventRecorder', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/AggregateState.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\AggregateState', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregate', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateDomainId.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', 1 => '__toString', 2 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', ), 1 => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', 1 => 'toString', 2 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', ), 2 => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', 1 => 'equals', 2 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateDomainId', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', 1 => 'getDomainId', 2 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', ), 1 => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', 1 => 'getName', 2 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', ), 2 => array ( 0 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', 1 => 'getData', 2 => 'App\\Framework\\EventSourcing\\Demo\\DemoAggregateEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\EventSourcing\\DefaultEventRecorder', ), 1 => 'pullRecordedEvents', 2 => 21, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\EventSourcing\\EventMetadata', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'tooManyFailedAttempts', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'suspiciousActivity', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'administrativeLock', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'bruteForceDetected', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'getSecurityEventData', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'isPermanentLock', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Authentication\\AccountLockedException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', 1 => 'resourceAccess', 2 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', 1 => 'adminAction', 2 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', 1 => 'apiEndpoint', 2 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', 1 => 'fileAccess', 2 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', 1 => 'dataAccess', 2 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', 1 => 'privilegeEscalation', 2 => 'App\\Framework\\Exception\\Authentication\\InsufficientPrivilegesException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'invalidPassword', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'invalidUsername', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'passwordExpired', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'twoFactorRequired', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'accountNotVerified', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'getSecurityEventData', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Authentication\\InvalidCredentialsException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'inactivityTimeout', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'absoluteTimeout', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'concurrentSessionLimit', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'securityPolicyTimeout', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'administrativeTermination', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'isRenewable', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), 7 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', 1 => 'getRecommendedAction', 2 => 'App\\Framework\\Exception\\Authentication\\SessionTimeoutException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'sessionToken', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'jwtToken', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'apiKey', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'refreshToken', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'passwordResetToken', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'twoFactorToken', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Authentication\\TokenExpiredException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorCode.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\ErrorCode', 1 => 'getRecoveryHint', 2 => 'App\\Framework\\Exception\\ErrorCode', ), 1 => array ( 0 => 'App\\Framework\\Exception\\ErrorCode', 1 => 'isRecoverable', 2 => 'App\\Framework\\Exception\\ErrorCode', ), 2 => array ( 0 => 'App\\Framework\\Exception\\ErrorCode', 1 => 'getRetryAfterSeconds', 2 => 'App\\Framework\\Exception\\ErrorCode', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\ErrorHandlerContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\ErrorHandlerContext', 1 => 'forLogging', 2 => 'App\\Framework\\Exception\\ErrorHandlerContext', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'array_walk', 1 => 101, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\ExceptionContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\ExceptionContext', 1 => 'getOperation', 2 => 'App\\Framework\\Exception\\ExceptionContext', ), 1 => array ( 0 => 'App\\Framework\\Exception\\ExceptionContext', 1 => 'getComponent', 2 => 'App\\Framework\\Exception\\ExceptionContext', ), 2 => array ( 0 => 'App\\Framework\\Exception\\ExceptionContext', 1 => 'getData', 2 => 'App\\Framework\\Exception\\ExceptionContext', ), 3 => array ( 0 => 'App\\Framework\\Exception\\ExceptionContext', 1 => 'getDebug', 2 => 'App\\Framework\\Exception\\ExceptionContext', ), 4 => array ( 0 => 'App\\Framework\\Exception\\ExceptionContext', 1 => 'getMetadata', 2 => 'App\\Framework\\Exception\\ExceptionContext', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'array_walk_recursive', 1 => 115, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\FrameworkException', 1 => 'fromContext', 2 => 'App\\Framework\\Exception\\FrameworkException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'jsonRequired', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'xmlRequired', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'formDataRequired', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'multipartRequired', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'textRequired', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'apiEndpoint', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', 1 => 'fileUpload', 2 => 'App\\Framework\\Exception\\Http\\InvalidContentTypeException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'syntaxError', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'depthExceeded', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'ctrlCharError', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'utf8Error', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'fromJsonLastError', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'getSecurityEventData', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'getUserMessage', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), 7 => array ( 0 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', 1 => 'getJsonErrorName', 2 => 'App\\Framework\\Exception\\Http\\MalformedJsonException', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'json_decode', 1 => 152, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'requestBody', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'requestHeader', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'uploadedFile', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'multipartForm', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'queryString', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'jsonPayload', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'getClientRecommendation', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), 7 => array ( 0 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', 1 => 'getAlternativeHttpCode', 2 => 'App\\Framework\\Exception\\Http\\OversizedRequestException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Http\\RateLimitExceededException', 1 => 'getClientRecommendation', 2 => 'App\\Framework\\Exception\\Http\\RateLimitExceededException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', 1 => 'path', 2 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', 1 => 'api', 2 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', 1 => 'admin', 2 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', 1 => 'asset', 2 => 'App\\Framework\\Exception\\Http\\RouteNotFoundException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\RequestContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'dotDotSlash', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'dotDotBackslash', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'encodedTraversal', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'unicodeTraversal', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'absolutePath', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'systemPath', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'configFileAccess', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 7 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 8 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'getUserMessage', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 9 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'getDefenseRecommendation', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), 10 => array ( 0 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', 1 => 'getSecureAlternatives', 2 => 'App\\Framework\\Exception\\Security\\PathTraversalAttemptException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'unionSelect', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'commentInjection', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'blindSqlInjection', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'timeBasedInjection', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'errorBasedInjection', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'booleanBasedInjection', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'stackedQueries', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 7 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'getAttackSeverity', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 8 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 9 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'getUserMessage', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), 10 => array ( 0 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', 1 => 'getDefenseRecommendation', 2 => 'App\\Framework\\Exception\\Security\\SqlInjectionAttemptException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'scriptTag', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 1 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'onEventHandler', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 2 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'javascriptProtocol', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 3 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'htmlInjection', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 4 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'domBasedXss', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 5 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'storedXss', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 6 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'cssInjection', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 7 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'svgXss', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 8 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'getAttackSeverity', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 9 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 10 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'getUserMessage', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), 11 => array ( 0 => 'App\\Framework\\Exception\\Security\\XssAttemptException', 1 => 'getDefenseRecommendation', 2 => 'App\\Framework\\Exception\\Security\\XssAttemptException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationAccountLockedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginFailedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessAfterFailEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthenticationLoginSuccessEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAccessDeniedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\AuthorizationAdminActionEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputSqlInjectionAttemptEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\InputXssAttemptEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', 1 => 'getEventIdentifier', 2 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', ), 1 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', 1 => 'getDescription', 2 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', ), 2 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', 1 => 'getLogLevel', 2 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', ), 3 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', 1 => 'getCategory', 2 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', ), 4 => array ( 0 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', 1 => 'requiresAlert', 2 => 'App\\Framework\\Exception\\SecurityEvent\\SystemExcessiveUseEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityException', 1 => 'fromEvent', 2 => 'App\\Framework\\Exception\\SecurityException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityLogLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SecurityLogLevel', 1 => 'getNumericValue', 2 => 'App\\Framework\\Exception\\SecurityLogLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Exception\\SystemContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Exception\\SystemContext', 1 => 'toArray', 2 => 'App\\Framework\\Exception\\SystemContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlag', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', 1 => 'getValue', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', ), 1 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', 1 => 'getUserId', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', ), 2 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', 1 => 'getEnvironment', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', ), 3 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', 1 => 'getUserAgent', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', ), 4 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', 1 => 'getIpAddress', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagStatus', 1 => 'isEnabled', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagStatus', ), 1 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagStatus', 1 => 'isDisabled', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagStatus', ), 2 => array ( 0 => 'App\\Framework\\FeatureFlags\\FeatureFlagStatus', 1 => 'isConditional', 2 => 'App\\Framework\\FeatureFlags\\FeatureFlagStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\FeatureFlags\\Storage\\FileFeatureFlagRepository', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\Directory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FilePermissionException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', 1 => 'read', 2 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', 1 => 'write', 2 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', ), 2 => array ( 0 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', 1 => 'delete', 2 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', ), 3 => array ( 0 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', 1 => 'createDirectory', 2 => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\File', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\File', 1 => 'getPath', 2 => 'App\\Framework\\Filesystem\\File', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\File', 1 => 'getMetadata', 2 => 'App\\Framework\\Filesystem\\File', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\FileMetadata', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\FilePath', 1 => 'toString', 2 => 'App\\Framework\\Filesystem\\FilePath', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\FilePath', 1 => '__toString', 2 => 'App\\Framework\\Filesystem\\FilePath', ), 2 => array ( 0 => 'App\\Framework\\Filesystem\\FilePath', 1 => 'getFilename', 2 => 'App\\Framework\\Filesystem\\FilePath', ), 3 => array ( 0 => 'App\\Framework\\Filesystem\\FilePath', 1 => 'getExtension', 2 => 'App\\Framework\\Filesystem\\FilePath', ), 4 => array ( 0 => 'App\\Framework\\Filesystem\\FilePath', 1 => 'equals', 2 => 'App\\Framework\\Filesystem\\FilePath', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\FileStorage', ), 1 => 'withExclusiveLock', 2 => 92, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\FileStorage', ), 1 => 'withExclusiveLock', 2 => 105, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\FileStorage', ), 1 => 'batch', 2 => 318, ), ), 'PHPStan\\Rules\\Traits\\TraitUseCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\StorageTrait', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\AtomicStorageTrait', ), 2 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\AppendableStorageTrait', ), 3 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\StreamableStorageTrait', ), 4 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\LockableStorageTrait', ), 5 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\CompressibleStorageTrait', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\FileSystemService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\FilesystemConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\FilesystemConfig', 1 => 'hasStorage', 2 => 'App\\Framework\\Filesystem\\FilesystemConfig', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\FilesystemConfig', 1 => 'isSerializerAvailable', 2 => 'App\\Framework\\Filesystem\\FilesystemConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\FilesystemManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\InMemoryStorage', 1 => 'exists', 2 => 'App\\Framework\\Filesystem\\InMemoryStorage', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\InMemoryStorage', 1 => 'isReadable', 2 => 'App\\Framework\\Filesystem\\InMemoryStorage', ), 2 => array ( 0 => 'App\\Framework\\Filesystem\\InMemoryStorage', 1 => 'isWritable', 2 => 'App\\Framework\\Filesystem\\InMemoryStorage', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'finfo_close', 1 => 214, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\InMemoryStorage', ), 1 => 'batch', 2 => 250, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php' => array ( 'PHPStan\\Rules\\Traits\\TraitUseCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\StorageTrait', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\PermissionChecker', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\CsvSerializer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\CsvSerializer', 1 => 'getMimeType', 2 => 'App\\Framework\\Filesystem\\Serializers\\CsvSerializer', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\CsvSerializer', 1 => 'getFileExtension', 2 => 'App\\Framework\\Filesystem\\Serializers\\CsvSerializer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\JsonSerializer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\JsonSerializer', 1 => 'getMimeType', 2 => 'App\\Framework\\Filesystem\\Serializers\\JsonSerializer', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\JsonSerializer', 1 => 'getFileExtension', 2 => 'App\\Framework\\Filesystem\\Serializers\\JsonSerializer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\PhpSerializer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\PhpSerializer', 1 => 'getMimeType', 2 => 'App\\Framework\\Filesystem\\Serializers\\PhpSerializer', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\Serializers\\PhpSerializer', 1 => 'getFileExtension', 2 => 'App\\Framework\\Filesystem\\Serializers\\PhpSerializer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\StorageFactory', 1 => 'getSupportedTypes', 2 => 'App\\Framework\\Filesystem\\StorageFactory', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\StorageTrait', 1 => 10, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\AppendableStorageTrait', 1 => 15, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AtomicStorageTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\AtomicStorageTrait', 1 => 15, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\CompressibleStorageTrait', 1 => 17, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/LockableStorageTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\LockableStorageTrait', 1 => 17, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/StreamableStorageTrait.php' => array ( 'PHPStan\\Rules\\Traits\\TraitDeclarationCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\Traits\\StreamableStorageTrait', 1 => 17, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', 1 => 'toArray', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', ), 2 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', 1 => 'get', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', ), 3 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', 1 => 'first', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FileCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 149, ), 1 => array ( 0 => 'usort', 1 => 164, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 1 => 'toString', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 1 => '__toString', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', ), 2 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 1 => 'equals', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 1 => 'getTotalErrors', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', ), 1 => array ( 0 => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 1 => 'hasFatalErrors', 2 => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLArgument.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLArgument', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLArgument', 1 => 'hasDefaultValue', 2 => 'App\\Framework\\GraphQL\\GraphQLArgument', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLExecutor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLField', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLFieldType.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLFieldType', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLFieldType', 1 => 'toString', 2 => 'App\\Framework\\GraphQL\\GraphQLFieldType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLParsedField.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedField', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedField', 1 => 'hasArguments', 2 => 'App\\Framework\\GraphQL\\GraphQLParsedField', ), 1 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedField', 1 => 'hasSubFields', 2 => 'App\\Framework\\GraphQL\\GraphQLParsedField', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLParsedQuery.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', 1 => 'isQuery', 2 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', ), 1 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', 1 => 'isMutation', 2 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', ), 2 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', 1 => 'isSubscription', 2 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', ), 3 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', 1 => 'hasVariables', 2 => 'App\\Framework\\GraphQL\\GraphQLParsedQuery', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match', 1 => 60, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLResult', 1 => 'hasErrors', 2 => 'App\\Framework\\GraphQL\\GraphQLResult', ), 1 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLResult', 1 => 'hasData', 2 => 'App\\Framework\\GraphQL\\GraphQLResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLSchema.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', 1 => 'getQuery', 2 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 1 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', 1 => 'getMutation', 2 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), 2 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLSchema', 1 => 'getType', 2 => 'App\\Framework\\GraphQL\\GraphQLSchema', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLType.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLType', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\GraphQL\\GraphQLType', 1 => 'getField', 2 => 'App\\Framework\\GraphQL\\GraphQLType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', 1 => 'getName', 2 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', ), 1 => array ( 0 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', 1 => 'getCategory', 2 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', ), 2 => array ( 0 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', 1 => 'getTimeout', 2 => 'App\\Framework\\Health\\Checks\\CacheHealthCheck', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', 1 => 'getName', 2 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', ), 1 => array ( 0 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', 1 => 'getCategory', 2 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', ), 2 => array ( 0 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', 1 => 'getTimeout', 2 => 'App\\Framework\\Health\\Checks\\DatabaseHealthCheck', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', 1 => 'getName', 2 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', ), 1 => array ( 0 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', 1 => 'getCategory', 2 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', ), 2 => array ( 0 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', 1 => 'getTimeout', 2 => 'App\\Framework\\Health\\Checks\\DiskSpaceHealthCheck', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', 1 => 'getName', 2 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', ), 1 => array ( 0 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', 1 => 'getCategory', 2 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', ), 2 => array ( 0 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', 1 => 'getTimeout', 2 => 'App\\Framework\\Health\\Checks\\SystemHealthCheck', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckCategory.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\HealthCheckCategory', 1 => 'getIcon', 2 => 'App\\Framework\\Health\\HealthCheckCategory', ), 1 => array ( 0 => 'App\\Framework\\Health\\HealthCheckCategory', 1 => 'getDisplayName', 2 => 'App\\Framework\\Health\\HealthCheckCategory', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\HealthCheckManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\HealthCheckManagerInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\HealthCheckResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\HealthCheckResult', 1 => 'isHealthy', 2 => 'App\\Framework\\Health\\HealthCheckResult', ), 1 => array ( 0 => 'App\\Framework\\Health\\HealthCheckResult', 1 => 'isWarning', 2 => 'App\\Framework\\Health\\HealthCheckResult', ), 2 => array ( 0 => 'App\\Framework\\Health\\HealthCheckResult', 1 => 'isUnhealthy', 2 => 'App\\Framework\\Health\\HealthCheckResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Health\\HealthReport', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\HealthReport', 1 => 'isHealthy', 2 => 'App\\Framework\\Health\\HealthReport', ), 1 => array ( 0 => 'App\\Framework\\Health\\HealthReport', 1 => 'hasWarnings', 2 => 'App\\Framework\\Health\\HealthReport', ), 2 => array ( 0 => 'App\\Framework\\Health\\HealthReport', 1 => 'isUnhealthy', 2 => 'App\\Framework\\Health\\HealthReport', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Health\\HealthStatus', 1 => 'getColor', 2 => 'App\\Framework\\Health\\HealthStatus', ), 1 => array ( 0 => 'App\\Framework\\Health\\HealthStatus', 1 => 'getIcon', 2 => 'App\\Framework\\Health\\HealthStatus', ), 2 => array ( 0 => 'App\\Framework\\Health\\HealthStatus', 1 => 'getPriority', 2 => 'App\\Framework\\Health\\HealthStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Api\\ClientLogController', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Api\\ClientLogRequest', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchOperation', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchOperation', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Batch\\BatchOperation', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchRequest', 1 => 'hasOperation', 2 => 'App\\Framework\\Http\\Batch\\BatchRequest', ), 1 => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchRequest', 1 => 'getOperation', 2 => 'App\\Framework\\Http\\Batch\\BatchRequest', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchResponse', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Batch\\BatchResponse', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Batch\\BatchResponse', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookie.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Cookies\\Cookie', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookies.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Cookies\\Cookies', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Cookies\\Cookies', 1 => 'get', 2 => 'App\\Framework\\Http\\Cookies\\Cookies', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\ETagInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\ETagManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\ETagManager', 1 => 'isEnabled', 2 => 'App\\Framework\\Http\\ETagManager', ), 1 => array ( 0 => 'App\\Framework\\Http\\ETagManager', 1 => 'prefersWeakETags', 2 => 'App\\Framework\\Http\\ETagManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'http_response_code', 1 => 19, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'http_response_code', 1 => 28, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Emitter\\SseEmitter', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'call_user_func', 1 => 55, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'http_response_code', 1 => 36, ), 1 => array ( 0 => 'http_response_code', 1 => 87, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Emitter\\WebSocketEmitter', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'http_response_code', 1 => 35, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Headers', 1 => 'all', 2 => 'App\\Framework\\Http\\Headers', ), 1 => array ( 0 => 'App\\Framework\\Http\\Headers', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Headers', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'AnonymousClass98a62a3211cef1a736d6c089ce4ade7a', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\HttpRequest', 1 => 'getQuery', 2 => 'App\\Framework\\Http\\HttpRequest', ), 1 => array ( 0 => 'App\\Framework\\Http\\HttpRequest', 1 => 'getPath', 2 => 'App\\Framework\\Http\\HttpRequest', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\HttpResponse', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/IpAddress.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\IpAddress', 1 => 'equals', 2 => 'App\\Framework\\Http\\IpAddress', ), 1 => array ( 0 => 'App\\Framework\\Http\\IpAddress', 1 => '__toString', 2 => 'App\\Framework\\Http\\IpAddress', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Metrics\\MiddlewareMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Metrics\\MiddlewareMetrics', 1 => 'getTotalExecutions', 2 => 'App\\Framework\\Http\\Metrics\\MiddlewareMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Metrics\\MiddlewareMetricsCollector', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middleware\\ETagMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MiddlewareCircuitBreaker', 1 => 'getServiceName', 2 => 'App\\Framework\\Http\\MiddlewareCircuitBreaker', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\MiddlewareContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MiddlewareContext', 1 => 'hasResponse', 2 => 'App\\Framework\\Http\\MiddlewareContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MiddlewareDependencyException', 1 => 'getMiddlewareClass', 2 => 'App\\Framework\\Http\\MiddlewareDependencyException', ), 1 => array ( 0 => 'App\\Framework\\Http\\MiddlewareDependencyException', 1 => 'getMissingDependencies', 2 => 'App\\Framework\\Http\\MiddlewareDependencyException', ), 2 => array ( 0 => 'App\\Framework\\Http\\MiddlewareDependencyException', 1 => 'getMiddlewareContext', 2 => 'App\\Framework\\Http\\MiddlewareDependencyException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\MiddlewareDependencyResolver', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MiddlewareDependencyResolver', 1 => 'extractDependenciesForSort', 2 => 'App\\Framework\\Http\\MiddlewareDependencyResolver', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MiddlewareManager', 1 => 'getExplicitOrder', 2 => 'App\\Framework\\Http\\MiddlewareManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 301, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriorityAttribute.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\MiddlewarePriorityAttribute', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareStateManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\MiddlewareStateManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\ApiVersioningMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\CORSMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ControllerRequestMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\ControllerRequestMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\CsrfMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\DDoSProtectionMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\ExceptionHandlingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\FormDataResponseMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\HoneypotMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\LoggingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\RateLimitMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\RemovePoweredByMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\RequestIdMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\RequestLoggingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\ResponseGeneratorMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\RoutingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\SecurityHeaderConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\SecurityHeaderMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Middlewares\\ServeStaticFilesMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeTypeAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MimeTypeAnalyzer', 1 => 'isImage', 2 => 'App\\Framework\\Http\\MimeTypeAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Http\\MimeTypeAnalyzer', 1 => 'isDocument', 2 => 'App\\Framework\\Http\\MimeTypeAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Http\\MimeTypeAnalyzer', 1 => 'isText', 2 => 'App\\Framework\\Http\\MimeTypeAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Http\\MimeTypeAnalyzer', 1 => 'isAudio', 2 => 'App\\Framework\\Http\\MimeTypeAnalyzer', ), 4 => array ( 0 => 'App\\Framework\\Http\\MimeTypeAnalyzer', 1 => 'isVideo', 2 => 'App\\Framework\\Http\\MimeTypeAnalyzer', ), 5 => array ( 0 => 'App\\Framework\\Http\\MimeTypeAnalyzer', 1 => 'isCompressed', 2 => 'App\\Framework\\Http\\MimeTypeAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeTypeResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\MimeTypeResolver', 1 => 'getExtensions', 2 => 'App\\Framework\\Http\\MimeTypeResolver', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/NamespacedState.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\NamespacedState', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\CookieParser', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\FileUploadParser', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 302, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\FormDataParser', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\HeaderParser', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'stream_copy_to_stream', 1 => 398, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\ParserConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\QueryStringParser', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 146, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Parser\\StreamingParser', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'stream_copy_to_stream', 1 => 278, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Query', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Query', 1 => 'get', 2 => 'App\\Framework\\Http\\Query', ), 1 => array ( 0 => 'App\\Framework\\Http\\Query', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Query', ), 2 => array ( 0 => 'App\\Framework\\Http\\Query', 1 => 'has', 2 => 'App\\Framework\\Http\\Query', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Range.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Range', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\RequestBody', 1 => 'get', 2 => 'App\\Framework\\Http\\RequestBody', ), 1 => array ( 0 => 'App\\Framework\\Http\\RequestBody', 1 => 'has', 2 => 'App\\Framework\\Http\\RequestBody', ), 2 => array ( 0 => 'App\\Framework\\Http\\RequestBody', 1 => 'all', 2 => 'App\\Framework\\Http\\RequestBody', ), 3 => array ( 0 => 'App\\Framework\\Http\\RequestBody', 1 => 'toArray', 2 => 'App\\Framework\\Http\\RequestBody', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\RequestFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\RequestId', 1 => 'toString', 2 => 'App\\Framework\\Http\\RequestId', ), 1 => array ( 0 => 'App\\Framework\\Http\\RequestId', 1 => 'getId', 2 => 'App\\Framework\\Http\\RequestId', ), 2 => array ( 0 => 'App\\Framework\\Http\\RequestId', 1 => 'getSignature', 2 => 'App\\Framework\\Http\\RequestId', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestIdGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\RequestIdGenerator', 1 => 'getHeaderName', 2 => 'App\\Framework\\Http\\RequestIdGenerator', ), 1 => array ( 0 => 'App\\Framework\\Http\\RequestIdGenerator', 1 => 'getCurrentId', 2 => 'App\\Framework\\Http\\RequestIdGenerator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestStateManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\RequestStateManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\RequestStateManager', 1 => 'get', 2 => 'App\\Framework\\Http\\RequestStateManager', ), 1 => array ( 0 => 'App\\Framework\\Http\\RequestStateManager', 1 => 'has', 2 => 'App\\Framework\\Http\\RequestStateManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResolvedMiddlewareStack.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', 1 => 'getMiddlewares', 2 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', ), 1 => array ( 0 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', 1 => 'getDependencyGraph', 2 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', ), 2 => array ( 0 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', 1 => 'getDependenciesFor', 2 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', ), 3 => array ( 0 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', 1 => 'getProvidedBy', 2 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', ), 4 => array ( 0 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', 1 => 'isCritical', 2 => 'App\\Framework\\Http\\ResolvedMiddlewareStack', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\ResponseEmitter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Responses\\StreamResponse', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Responses\\WebSocketResponse', 1 => 'getWebSocketResult', 2 => 'App\\Framework\\Http\\Responses\\WebSocketResponse', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\ServerEnvironment', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\ServerEnvironment', 1 => 'get', 2 => 'App\\Framework\\Http\\ServerEnvironment', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpRiskLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Services\\IpRiskLevel', 1 => 'getScore', 2 => 'App\\Framework\\Http\\Services\\IpRiskLevel', ), 1 => array ( 0 => 'App\\Framework\\Http\\Services\\IpRiskLevel', 1 => 'getName', 2 => 'App\\Framework\\Http\\Services\\IpRiskLevel', ), 2 => array ( 0 => 'App\\Framework\\Http\\Services\\IpRiskLevel', 1 => 'shouldBlock', 2 => 'App\\Framework\\Http\\Services\\IpRiskLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Services\\IpSecurityService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\CsrfProtection', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/CsrfTokenGeneratedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\CsrfTokenGeneratedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/CsrfTokenValidatedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\CsrfTokenValidatedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/FlashMessageAddedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\FlashMessageAddedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/FlashMessageRemovedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\FlashMessageRemovedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionClearedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\SessionClearedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionDataChangedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\SessionDataChangedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionDataRemovedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\SessionDataRemovedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionInvalidatedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\SessionInvalidatedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionRegeneratedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Events\\SessionRegeneratedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\FileSessionStorage', 1 => 'getBasePath', 2 => 'App\\Framework\\Http\\Session\\FileSessionStorage', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Fingerprint/FingerprintData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Fingerprint\\FingerprintData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\Fingerprint\\FingerprintData', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Session\\Fingerprint\\FingerprintData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Fingerprint/FingerprintMissmatch.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\Fingerprint\\FingerprintMissmatch', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\FlashBag', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\FlashManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\FlashManager', 1 => 'filterSessionData', 2 => 'App\\Framework\\Http\\Session\\FlashManager', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\FlashManager', 1 => 'getMarkedItems', 2 => 'App\\Framework\\Http\\Session\\FlashManager', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\FlashManager', 1 => 'hasMarkedItems', 2 => 'App\\Framework\\Http\\Session\\FlashManager', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\FlashManager', 1 => 'getMarkedKeys', 2 => 'App\\Framework\\Http\\Session\\FlashManager', ), 4 => array ( 0 => 'App\\Framework\\Http\\Session\\FlashManager', 1 => '__debugInfo', 2 => 'App\\Framework\\Http\\Session\\FlashManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\FormDataStorage', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SecurityManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\SecurityManager', 1 => 'key', 2 => 'App\\Framework\\Http\\Session\\SecurityManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\Session', 1 => 'getId', 2 => 'App\\Framework\\Http\\Session\\Session', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SessionCookieConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionCookieConfig', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Session\\SessionCookieConfig', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionCookieConfig', 1 => 'getCookieName', 2 => 'App\\Framework\\Http\\Session\\SessionCookieConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SessionDataExample', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SessionFingerprint', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprintConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionFingerprintConfig', 1 => 'toComponentArray', 2 => 'App\\Framework\\Http\\Session\\SessionFingerprintConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionId', 1 => 'toString', 2 => 'App\\Framework\\Http\\Session\\SessionId', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionId', 1 => 'equals', 2 => 'App\\Framework\\Http\\Session\\SessionId', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SessionInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionManager', 1 => 'getCookieConfig', 2 => 'App\\Framework\\Http\\Session\\SessionManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 204, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SessionMiddleware', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\SessionManager', ), 1 => 'saveSession', 2 => 108, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SessionSecurityData', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SimpleSessionIdGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\SimpleSessionIdGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValidationErrorBag', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/CsrfDataCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', 1 => 'getFormData', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', 1 => 'hasForm', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\CsrfDataCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', 1 => 'getMetadata', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', 1 => 'isType', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', 1 => 'isSuccess', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', 1 => 'isError', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), 4 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', 1 => 'isWarning', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), 5 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', 1 => 'isInfo', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessage', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', 1 => 'all', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', 1 => 'getCssClass', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', 1 => 'getIcon', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', 1 => 'getLabel', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', 1 => 'isErrorType', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', ), 4 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', 1 => 'isSuccessType', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FlashMessageType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', 1 => 'get', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', 1 => 'getMetadata', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormDataCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', 1 => 'get', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', 1 => 'has', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', 1 => 'all', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\FormDataCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityData', 1 => 'getMetadata', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', 1 => 'get', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', 1 => 'getValue', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', 1 => 'has', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', 1 => 'all', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', ), 4 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SecurityDataCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SessionData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\SessionData', 1 => 'getUserData', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\SessionData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationError', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationError', 1 => 'getMetadata', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationError', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', 1 => 'toArray', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), 1 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', 1 => 'getFormErrors', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), 2 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', 1 => 'getFieldErrors', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), 3 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', 1 => 'hasFormErrors', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), 4 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', 1 => 'hasFieldErrors', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), 5 => array ( 0 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\Session\\ValueObjects\\ValidationErrorCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/SimpleRequestIdGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\SimpleRequestIdGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\SseStream', 1 => 'isActive', 2 => 'App\\Framework\\Http\\SseStream', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'http_response_code', 1 => 30, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Status.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Status', 1 => 'getDescription', 2 => 'App\\Framework\\Http\\Status', ), 1 => array ( 0 => 'App\\Framework\\Http\\Status', 1 => 'isSuccess', 2 => 'App\\Framework\\Http\\Status', ), 2 => array ( 0 => 'App\\Framework\\Http\\Status', 1 => 'isRedirection', 2 => 'App\\Framework\\Http\\Status', ), 3 => array ( 0 => 'App\\Framework\\Http\\Status', 1 => 'isClientError', 2 => 'App\\Framework\\Http\\Status', ), 4 => array ( 0 => 'App\\Framework\\Http\\Status', 1 => 'isServerError', 2 => 'App\\Framework\\Http\\Status', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', 1 => 'generateHlsMaster', 2 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), 1 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', 1 => 'generateHlsMedia', 2 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), 2 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', 1 => 'getRepresentations', 2 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), 3 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', 1 => 'getSegments', 2 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptiveStreamingController', 1 => 'getVideoSegments', 2 => 'App\\Framework\\Http\\Streaming\\AdaptiveStreamingController', ), 1 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptiveStreamingController', 1 => 'getSegmentPath', 2 => 'App\\Framework\\Http\\Streaming\\AdaptiveStreamingController', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), 1 => 'addSegment', 2 => 39, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Streaming\\AdaptivePlaylist', ), 1 => 'addRepresentation', 2 => 72, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/StreamRepresentation.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Streaming\\StreamRepresentation', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/StreamingFormat.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Streaming\\StreamingFormat', 1 => 'getContentType', 2 => 'App\\Framework\\Http\\Streaming\\StreamingFormat', ), 1 => array ( 0 => 'App\\Framework\\Http\\Streaming\\StreamingFormat', 1 => 'getFileExtension', 2 => 'App\\Framework\\Http\\Streaming\\StreamingFormat', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadError.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\UploadError', 1 => 'fromUploadError', 2 => 'App\\Framework\\Http\\UploadError', ), 1 => array ( 0 => 'App\\Framework\\Http\\UploadError', 1 => 'getMessage', 2 => 'App\\Framework\\Http\\UploadError', ), 2 => array ( 0 => 'App\\Framework\\Http\\UploadError', 1 => 'isError', 2 => 'App\\Framework\\Http\\UploadError', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\UploadedFiles', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\UploadedFiles', 1 => 'get', 2 => 'App\\Framework\\Http\\UploadedFiles', ), 1 => array ( 0 => 'App\\Framework\\Http\\UploadedFiles', 1 => 'has', 2 => 'App\\Framework\\Http\\UploadedFiles', ), 2 => array ( 0 => 'App\\Framework\\Http\\UploadedFiles', 1 => 'all', 2 => 'App\\Framework\\Http\\UploadedFiles', ), 3 => array ( 0 => 'App\\Framework\\Http\\UploadedFiles', 1 => 'isEmpty', 2 => 'App\\Framework\\Http\\UploadedFiles', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Uri', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Uri', 1 => '__toString', 2 => 'App\\Framework\\Http\\Uri', ), 1 => array ( 0 => 'App\\Framework\\Http\\Uri', 1 => 'toString', 2 => 'App\\Framework\\Http\\Uri', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/CidrRange.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\CidrRange', 1 => 'toString', 2 => 'App\\Framework\\Http\\ValueObjects\\CidrRange', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/ETag.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\ETag', 1 => 'getValue', 2 => 'App\\Framework\\Http\\ValueObjects\\ETag', ), 1 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\ETag', 1 => 'isWeak', 2 => 'App\\Framework\\Http\\ValueObjects\\ETag', ), 2 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\ETag', 1 => 'isStrong', 2 => 'App\\Framework\\Http\\ValueObjects\\ETag', ), 3 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\ETag', 1 => 'toHeaderValue', 2 => 'App\\Framework\\Http\\ValueObjects\\ETag', ), 4 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\ETag', 1 => 'equals', 2 => 'App\\Framework\\Http\\ValueObjects\\ETag', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\IpPattern', 1 => 'getType', 2 => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 1 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\IpPattern', 1 => 'toString', 2 => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 2 => array ( 0 => 'App\\Framework\\Http\\ValueObjects\\IpPattern', 1 => 'equals', 2 => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Versioning\\ApiVersion', 1 => 'toString', 2 => 'App\\Framework\\Http\\Versioning\\ApiVersion', ), 1 => array ( 0 => 'App\\Framework\\Http\\Versioning\\ApiVersion', 1 => 'toShortString', 2 => 'App\\Framework\\Http\\Versioning\\ApiVersion', ), 2 => array ( 0 => 'App\\Framework\\Http\\Versioning\\ApiVersion', 1 => 'toNumericString', 2 => 'App\\Framework\\Http\\Versioning\\ApiVersion', ), 3 => array ( 0 => 'App\\Framework\\Http\\Versioning\\ApiVersion', 1 => 'equals', 2 => 'App\\Framework\\Http\\Versioning\\ApiVersion', ), 4 => array ( 0 => 'App\\Framework\\Http\\Versioning\\ApiVersion', 1 => 'isCompatibleWith', 2 => 'App\\Framework\\Http\\Versioning\\ApiVersion', ), 5 => array ( 0 => 'App\\Framework\\Http\\Versioning\\ApiVersion', 1 => 'isNewerThan', 2 => 'App\\Framework\\Http\\Versioning\\ApiVersion', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Versioning\\VersionExtractor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\Versioning\\VersioningConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\Versioning\\VersioningStrategy', 1 => 'getDescription', 2 => 'App\\Framework\\Http\\Versioning\\VersioningStrategy', ), 1 => array ( 0 => 'App\\Framework\\Http\\Versioning\\VersioningStrategy', 1 => 'getDefaultHeaderName', 2 => 'App\\Framework\\Http\\Versioning\\VersioningStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', 1 => 'getAttribute', 2 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', 1 => 'isConnected', 2 => 'App\\Framework\\Http\\WebSocketConnection', ), 2 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', 1 => 'getId', 2 => 'App\\Framework\\Http\\WebSocketConnection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Http\\WebSocketServer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketServer', 1 => 'getCurrentSocket', 2 => 'App\\Framework\\Http\\WebSocketServer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'socket_set_option', 1 => 53, ), 1 => array ( 0 => 'socket_write', 1 => 223, ), 2 => array ( 0 => 'call_user_func', 1 => 233, ), 3 => array ( 0 => 'call_user_func', 1 => 351, ), 4 => array ( 0 => 'call_user_func', 1 => 435, ), 5 => array ( 0 => 'call_user_func', 1 => 480, ), 6 => array ( 0 => 'call_user_func', 1 => 594, ), 7 => array ( 0 => 'call_user_func', 1 => 605, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Http\\WebSocketConnection', ), 1 => 'ping', 2 => 492, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\HttpClient\\AsyncAwareHttpClient', 1 => 'async', 2 => 'App\\Framework\\HttpClient\\AsyncAwareHttpClient', ), 1 => array ( 0 => 'App\\Framework\\HttpClient\\AsyncAwareHttpClient', 1 => 'getWrappedClient', 2 => 'App\\Framework\\HttpClient\\AsyncAwareHttpClient', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\AsyncHttpClientAdapter', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 210, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\AsyncHttpClientBuilder', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\AsyncHttpClientDecorator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\HttpClient\\AsyncHttpClientDecorator', 1 => 'getWrappedClient', 2 => 'App\\Framework\\HttpClient\\AsyncHttpClientDecorator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Fiber', ), 1 => 'getReturn', 2 => 107, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\AuthConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\AuthResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\ClientOptions', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\ClientRequest', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\ClientResponse', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\CurlHttpClient', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'curl_setopt_array', 1 => 54, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\DefaultHttpClient', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\Examples\\AsyncHttpClientBuilderExample', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\HttpClient\\AsyncHttpClientBuilder', ), 1 => 'post', 2 => 106, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\Examples\\AsyncHttpClientExample', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\HttpClientInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientWithMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\HttpClientWithMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\Middleware\\CachingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\Middleware\\LoggingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\Middleware\\RateLimitingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\HttpClient\\Middleware\\RetryMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'toString', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 1 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'getValue', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 2 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => '__toString', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 3 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'getTimestamp', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 4 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'getPayload', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 5 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'equals', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 6 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'isOlderThan', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), 7 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'isNewerThan', 2 => 'App\\Framework\\Ksuid\\Ksuid', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Ksuid\\KsuidGenerator', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureStaticCallCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Ksuid\\Ksuid', 1 => 'fromString', 2 => 158, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\DefaultLogger', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'opcache_reset', 1 => 146, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogRotator', ), 1 => 'rotateIfNeeded', 2 => 120, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/QueuedLogHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\Handlers\\QueuedLogHandler', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Handlers\\QueuedLogHandler', 1 => 'isHandling', 2 => 'App\\Framework\\Logging\\Handlers\\QueuedLogHandler', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/SyslogHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\Handlers\\SyslogHandler', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Handlers\\SyslogHandler', 1 => 'mapLogLevelToSyslogPriority', 2 => 'App\\Framework\\Logging\\Handlers\\SyslogHandler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'syslog', 1 => 37, ), 1 => array ( 0 => 'openlog', 1 => 43, ), 2 => array ( 0 => 'closelog', 1 => 94, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/WebHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\Handlers\\WebHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogConfig', 1 => 'getLogPath', 2 => 'App\\Framework\\Logging\\LogConfig', ), 1 => array ( 0 => 'App\\Framework\\Logging\\LogConfig', 1 => 'getAllLogPaths', 2 => 'App\\Framework\\Logging\\LogConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'fromValue', 2 => 'App\\Framework\\Logging\\LogLevel', ), 1 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'getName', 2 => 'App\\Framework\\Logging\\LogLevel', ), 2 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'getConsoleColor', 2 => 'App\\Framework\\Logging\\LogLevel', ), 3 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'isHigherThan', 2 => 'App\\Framework\\Logging\\LogLevel', ), 4 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'isLowerThan', 2 => 'App\\Framework\\Logging\\LogLevel', ), 5 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'isEqual', 2 => 'App\\Framework\\Logging\\LogLevel', ), 6 => array ( 0 => 'App\\Framework\\Logging\\LogLevel', 1 => 'toRFC5424', 2 => 'App\\Framework\\Logging\\LogLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\LogRecord', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getMessage', 2 => 'App\\Framework\\Logging\\LogRecord', ), 1 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getContext', 2 => 'App\\Framework\\Logging\\LogRecord', ), 2 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getLevel', 2 => 'App\\Framework\\Logging\\LogRecord', ), 3 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getTimestamp', 2 => 'App\\Framework\\Logging\\LogRecord', ), 4 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getChannel', 2 => 'App\\Framework\\Logging\\LogRecord', ), 5 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getExtra', 2 => 'App\\Framework\\Logging\\LogRecord', ), 6 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', 1 => 'getExtras', 2 => 'App\\Framework\\Logging\\LogRecord', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\LogRotator', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 109, ), 1 => array ( 0 => 'gzwrite', 1 => 155, ), 2 => array ( 0 => 'gzclose', 1 => 159, ), 3 => array ( 0 => 'usort', 1 => 193, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogRotator', ), 1 => 'compressFile', 2 => 78, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\ProcessLogCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\ProcessLogCommandHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\ProcessorManager', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 46, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\Processors\\ExceptionProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Processors\\ExceptionProcessor', 1 => 'getPriority', 2 => 'App\\Framework\\Logging\\Processors\\ExceptionProcessor', ), 1 => array ( 0 => 'App\\Framework\\Logging\\Processors\\ExceptionProcessor', 1 => 'getName', 2 => 'App\\Framework\\Logging\\Processors\\ExceptionProcessor', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', ), 1 => 'addExtra', 2 => 54, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Processors\\InterpolationProcessor', 1 => 'getPriority', 2 => 'App\\Framework\\Logging\\Processors\\InterpolationProcessor', ), 1 => array ( 0 => 'App\\Framework\\Logging\\Processors\\InterpolationProcessor', 1 => 'getName', 2 => 'App\\Framework\\Logging\\Processors\\InterpolationProcessor', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', ), 1 => 'setMessage', 2 => 31, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\Processors\\IntrospectionProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Processors\\IntrospectionProcessor', 1 => 'getPriority', 2 => 'App\\Framework\\Logging\\Processors\\IntrospectionProcessor', ), 1 => array ( 0 => 'App\\Framework\\Logging\\Processors\\IntrospectionProcessor', 1 => 'getName', 2 => 'App\\Framework\\Logging\\Processors\\IntrospectionProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/RequestIdProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Logging\\Processors\\RequestIdProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Processors\\RequestIdProcessor', 1 => 'getPriority', 2 => 'App\\Framework\\Logging\\Processors\\RequestIdProcessor', ), 1 => array ( 0 => 'App\\Framework\\Logging\\Processors\\RequestIdProcessor', 1 => 'getName', 2 => 'App\\Framework\\Logging\\Processors\\RequestIdProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\Processors\\WebInfoProcessor', 1 => 'getPriority', 2 => 'App\\Framework\\Logging\\Processors\\WebInfoProcessor', ), 1 => array ( 0 => 'App\\Framework\\Logging\\Processors\\WebInfoProcessor', 1 => 'getName', 2 => 'App\\Framework\\Logging\\Processors\\WebInfoProcessor', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Logging\\LogRecord', ), 1 => 'addExtras', 2 => 57, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Attachment.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Attachment', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailBatchCommand', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailBatchCommand', 1 => 'getMaxRetries', 2 => 'App\\Framework\\Mail\\Commands\\SendEmailBatchCommand', ), 1 => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailBatchCommand', 1 => 'getDelaySeconds', 2 => 'App\\Framework\\Mail\\Commands\\SendEmailBatchCommand', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailBatchCommandHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailCommand', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailCommand', 1 => 'getMaxRetries', 2 => 'App\\Framework\\Mail\\Commands\\SendEmailCommand', ), 1 => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailCommand', 1 => 'getDelaySeconds', 2 => 'App\\Framework\\Mail\\Commands\\SendEmailCommand', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Commands\\SendEmailCommandHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\EmailList', 1 => 'isEmpty', 2 => 'App\\Framework\\Mail\\EmailList', ), 1 => array ( 0 => 'App\\Framework\\Mail\\EmailList', 1 => 'first', 2 => 'App\\Framework\\Mail\\EmailList', ), 2 => array ( 0 => 'App\\Framework\\Mail\\EmailList', 1 => 'toArray', 2 => 'App\\Framework\\Mail\\EmailList', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Examples\\MailerUsageExample', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\Mailer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\Message', 1 => 'hasHtmlBody', 2 => 'App\\Framework\\Mail\\Message', ), 1 => array ( 0 => 'App\\Framework\\Mail\\Message', 1 => 'hasAttachments', 2 => 'App\\Framework\\Mail\\Message', ), 2 => array ( 0 => 'App\\Framework\\Mail\\Message', 1 => 'hasReplyTo', 2 => 'App\\Framework\\Mail\\Message', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\PooledSmtpTransport', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\PooledSmtpTransport', 1 => 'getName', 2 => 'App\\Framework\\Mail\\PooledSmtpTransport', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Priority.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\Priority', 1 => 'toHeaderValue', 2 => 'App\\Framework\\Mail\\Priority', ), 1 => array ( 0 => 'App\\Framework\\Mail\\Priority', 1 => 'toImportanceValue', 2 => 'App\\Framework\\Mail\\Priority', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\SmtpConfig', 1 => 'requiresAuthentication', 2 => 'App\\Framework\\Mail\\SmtpConfig', ), 1 => array ( 0 => 'App\\Framework\\Mail\\SmtpConfig', 1 => 'hasEncryption', 2 => 'App\\Framework\\Mail\\SmtpConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\SmtpTransport', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\SmtpTransport', 1 => 'getName', 2 => 'App\\Framework\\Mail\\SmtpTransport', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'stream_set_timeout', 1 => 87, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\SmtpTransport', ), 1 => 'readResponse', 2 => 426, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\Testing\\MockTransport', 1 => 'isAvailable', 2 => 'App\\Framework\\Mail\\Testing\\MockTransport', ), 1 => array ( 0 => 'App\\Framework\\Mail\\Testing\\MockTransport', 1 => 'getName', 2 => 'App\\Framework\\Mail\\Testing\\MockTransport', ), 2 => array ( 0 => 'App\\Framework\\Mail\\Testing\\MockTransport', 1 => 'getSentMessages', 2 => 'App\\Framework\\Mail\\Testing\\MockTransport', ), 3 => array ( 0 => 'App\\Framework\\Mail\\Testing\\MockTransport', 1 => 'getSentMessageWithSubject', 2 => 'App\\Framework\\Mail\\Testing\\MockTransport', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mail\\TransportResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mail\\TransportResult', 1 => 'isSuccess', 2 => 'App\\Framework\\Mail\\TransportResult', ), 1 => array ( 0 => 'App\\Framework\\Mail\\TransportResult', 1 => 'isFailure', 2 => 'App\\Framework\\Mail\\TransportResult', ), 2 => array ( 0 => 'App\\Framework\\Mail\\TransportResult', 1 => 'getMetadata', 2 => 'App\\Framework\\Mail\\TransportResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Markdown\\MarkdownRenderer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Markdown\\MarkdownRenderer', 1 => 'getSyntaxHighlightingScript', 2 => 'App\\Framework\\Markdown\\MarkdownRenderer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Markdown\\MarkdownTheme', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Markdown\\MarkdownTheme', 1 => 'getDefaultTheme', 2 => 'App\\Framework\\Markdown\\MarkdownTheme', ), 1 => array ( 0 => 'App\\Framework\\Markdown\\MarkdownTheme', 1 => 'getDocsTheme', 2 => 'App\\Framework\\Markdown\\MarkdownTheme', ), 2 => array ( 0 => 'App\\Framework\\Markdown\\MarkdownTheme', 1 => 'getApiTheme', 2 => 'App\\Framework\\Markdown\\MarkdownTheme', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Console\\McpServerCommand', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'putenv', 1 => 30, ), 1 => array ( 0 => 'ini_set', 1 => 33, ), 2 => array ( 0 => 'ini_set', 1 => 34, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\McpInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResource.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\McpResource', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\McpResourceMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Mcp\\McpResourceMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\McpResourceRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\McpResourceRegistry', 1 => 'getResource', 2 => 'App\\Framework\\Mcp\\McpResourceRegistry', ), 1 => array ( 0 => 'App\\Framework\\Mcp\\McpResourceRegistry', 1 => 'getAllResources', 2 => 'App\\Framework\\Mcp\\McpResourceRegistry', ), 2 => array ( 0 => 'App\\Framework\\Mcp\\McpResourceRegistry', 1 => 'hasResources', 2 => 'App\\Framework\\Mcp\\McpResourceRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\McpServer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\McpServer', 1 => 'mapPhpTypeToJsonSchema', 2 => 'App\\Framework\\Mcp\\McpServer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpTool.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\McpTool', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\McpToolMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\Mcp\\McpToolMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\McpToolRegistry', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\McpToolRegistry', 1 => 'getTool', 2 => 'App\\Framework\\Mcp\\McpToolRegistry', ), 1 => array ( 0 => 'App\\Framework\\Mcp\\McpToolRegistry', 1 => 'getAllTools', 2 => 'App\\Framework\\Mcp\\McpToolRegistry', ), 2 => array ( 0 => 'App\\Framework\\Mcp\\McpToolRegistry', 1 => 'hasTools', 2 => 'App\\Framework\\Mcp\\McpToolRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\CacheTools', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\CacheTools', 1 => 'cacheInfo', 2 => 'App\\Framework\\Mcp\\Tools\\CacheTools', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', 1 => 'generateSmellRecommendations', 2 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', ), 1 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', 1 => 'generateSolidRecommendations', 2 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', ), 2 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', 1 => 'generateOverallRecommendations', 2 => 'App\\Framework\\Mcp\\Tools\\CodeQualityTools', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\DatabaseTools', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\DatabaseTools', 1 => 'databaseConfigInfo', 2 => 'App\\Framework\\Mcp\\Tools\\DatabaseTools', ), 1 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\DatabaseTools', 1 => 'listEntities', 2 => 'App\\Framework\\Mcp\\Tools\\DatabaseTools', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FileSystemTools', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', 1 => 'getFrameworkCodePatterns', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), 1 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', 1 => 'getMcpFrameworkPatterns', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), 2 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', 1 => 'getValueObjectPatterns', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), 3 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', 1 => 'scanForValueObjects', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), 4 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', 1 => 'analyzePrimitiveUsage', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), 5 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', 1 => 'analyzeDiscoveryPerformance', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkAgents', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 395, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkTools', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\FrameworkTools', 1 => 'analyzeContainerBindings', 2 => 'App\\Framework\\Mcp\\Tools\\FrameworkTools', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\LogTools', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Mcp\\Tools\\LogTools', 1 => 'loggerInfo', 2 => 'App\\Framework\\Mcp\\Tools\\LogTools', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Mcp\\Tools\\PerformanceTools', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 172, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/Keywords.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Meta\\Keywords', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/MetaData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Meta\\MetaData', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/StaticPageMetaResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Meta\\StaticPageMetaResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\JsonFormatter', 1 => 'getContentType', 2 => 'App\\Framework\\Metrics\\Formatters\\JsonFormatter', ), 1 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\JsonFormatter', 1 => 'getName', 2 => 'App\\Framework\\Metrics\\Formatters\\JsonFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\OpenMetricsFormatter', 1 => 'getContentType', 2 => 'App\\Framework\\Metrics\\Formatters\\OpenMetricsFormatter', ), 1 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\OpenMetricsFormatter', 1 => 'getName', 2 => 'App\\Framework\\Metrics\\Formatters\\OpenMetricsFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\PrometheusFormatter', 1 => 'getContentType', 2 => 'App\\Framework\\Metrics\\Formatters\\PrometheusFormatter', ), 1 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\PrometheusFormatter', 1 => 'getName', 2 => 'App\\Framework\\Metrics\\Formatters\\PrometheusFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\StatsDFormatter', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\StatsDFormatter', 1 => 'getContentType', 2 => 'App\\Framework\\Metrics\\Formatters\\StatsDFormatter', ), 1 => array ( 0 => 'App\\Framework\\Metrics\\Formatters\\StatsDFormatter', 1 => 'getName', 2 => 'App\\Framework\\Metrics\\Formatters\\StatsDFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Metrics\\Metric', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricSuffix.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricSuffix', 1 => 'histogramSuffixes', 2 => 'App\\Framework\\Metrics\\MetricSuffix', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricType', 1 => 'getDescription', 2 => 'App\\Framework\\Metrics\\MetricType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', 1 => 'getMetrics', 2 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', 1 => 'getAllMetrics', 2 => 'App\\Framework\\Metrics\\MetricsCollection', ), 2 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', 1 => 'getCollectedAt', 2 => 'App\\Framework\\Metrics\\MetricsCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'add', 2 => 88, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'add', 2 => 100, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'add', 2 => 110, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'add', 2 => 160, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollector', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 68, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 76, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 85, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'counter', 2 => 97, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'counter', 2 => 103, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 113, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 123, ), 7 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 132, ), 8 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'gauge', 2 => 138, ), 9 => array ( 0 => array ( 0 => 'App\\Framework\\Metrics\\MetricsCollection', ), 1 => 'counter', 2 => 149, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'calculateBoundaryHealthStatus', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 1 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'getActiveCircuits', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 2 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'getActiveBoundaries', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 3 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'getAggregatedCircuitMetrics', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 4 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'getAggregatedBoundaryMetrics', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 5 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'getMetricsInTimeRange', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 6 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'analyzeTrends', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 7 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'analyzeCircuitPerformance', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), 8 => array ( 0 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', 1 => 'analyzeBoundaryPerformance', 2 => 'App\\Framework\\Monitoring\\AdvancedMonitoring', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Monitoring\\CircuitBreakerMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Monitoring\\CircuitBreakerMetrics', 1 => 'isFailed', 2 => 'App\\Framework\\Monitoring\\CircuitBreakerMetrics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Monitoring\\ErrorBoundaryMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Monitoring\\ErrorBoundaryMetrics', 1 => 'getMostCommonErrorType', 2 => 'App\\Framework\\Monitoring\\ErrorBoundaryMetrics', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 157, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Monitoring\\MonitoringAlert', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Monitoring\\MonitoringAlert', 1 => 'getPriority', 2 => 'App\\Framework\\Monitoring\\MonitoringAlert', ), 1 => array ( 0 => 'App\\Framework\\Monitoring\\MonitoringAlert', 1 => 'requiresImmediateAttention', 2 => 'App\\Framework\\Monitoring\\MonitoringAlert', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Monitoring\\MonitoringConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Monitoring\\SystemHealthSummary', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Monitoring\\SystemHealthSummary', 1 => 'isFullyOperational', 2 => 'App\\Framework\\Monitoring\\SystemHealthSummary', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\NanoId\\NanoId', 1 => 'toString', 2 => 'App\\Framework\\NanoId\\NanoId', ), 1 => array ( 0 => 'App\\Framework\\NanoId\\NanoId', 1 => 'getValue', 2 => 'App\\Framework\\NanoId\\NanoId', ), 2 => array ( 0 => 'App\\Framework\\NanoId\\NanoId', 1 => '__toString', 2 => 'App\\Framework\\NanoId\\NanoId', ), 3 => array ( 0 => 'App\\Framework\\NanoId\\NanoId', 1 => 'equals', 2 => 'App\\Framework\\NanoId\\NanoId', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiEndpoint.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiParameter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Attributes\\ApiParameter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiRequestBody.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Attributes\\ApiRequestBody', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiSecurity.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Attributes\\ApiSecurity', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Commands\\GenerateMarkdownDocsCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\Commands\\GenerateOpenApiCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiContact.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiContact', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiContact', 1 => 'toArray', 2 => 'App\\Framework\\OpenApi\\OpenApiContact', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiInfo', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiLicense.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiLicense', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiLicense', 1 => 'toArray', 2 => 'App\\Framework\\OpenApi\\OpenApiLicense', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\OpenApi\\OpenApiSpec', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalysis', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalysis', 1 => 'hasIssues', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalysis', ), 1 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalysis', 1 => 'hasCriticalIssues', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalysis', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'getExecutionRecommendations', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'getMemoryRecommendations', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'getThroughputRecommendations', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'getCacheRecommendations', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), 4 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'getErrorRecommendations', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), 5 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'getThreshold', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), 6 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', 1 => 'escalateSeverity', 2 => 'App\\Framework\\Performance\\Analysis\\BottleneckAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'arsort', 1 => 133, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'hasValidTrend', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 1 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'isImproving', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 2 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'isDegrading', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 3 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'isStable', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 4 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'getTrendStrength', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 5 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'getTrendDirection', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), 6 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', 1 => 'getPrediction', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalysis', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalyzer', 1 => 'isPredictionConcerning', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Performance\\Analysis\\TrendAnalyzer', 1 => 'getMetricTrendRecommendation', 2 => 'App\\Framework\\Performance\\Analysis\\TrendAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 34, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 1 => 'getMetric', 2 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', ), 1 => array ( 0 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 1 => 'isEnabled', 2 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', ), 2 => array ( 0 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 1 => 'hasActiveTimer', 2 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', ), 3 => array ( 0 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 1 => 'getCallStack', 2 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', ), 4 => array ( 0 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 1 => 'getNestedStructure', 2 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', ), 5 => array ( 0 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 1 => 'calculateChildrenTime', 2 => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'array_splice', 1 => 474, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Events\\OperationCompletedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Events\\OperationFailedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Events\\OperationStartedEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Middleware\\ControllerPerformanceMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Middleware\\DatabasePerformanceMiddleware', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\Middleware\\DatabasePerformanceMiddleware', 1 => 'getPriority', 2 => 'App\\Framework\\Performance\\Middleware\\DatabasePerformanceMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware', 1 => 'wrapReportForInsertion', 2 => 'App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware', ), 1 => array ( 0 => 'App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware', 1 => 'getTimeColor', 2 => 'App\\Framework\\Performance\\Middleware\\PerformanceDebugMiddleware', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'assert', 1 => 113, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Middleware\\RequestPerformanceMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\Middleware\\RoutingPerformanceMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\NestedPerformanceTracker', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\NestedPerformanceTracker', 1 => 'getActiveOperations', 2 => 'App\\Framework\\Performance\\NestedPerformanceTracker', ), 1 => array ( 0 => 'App\\Framework\\Performance\\NestedPerformanceTracker', 1 => 'getCompletedOperations', 2 => 'App\\Framework\\Performance\\NestedPerformanceTracker', ), 2 => array ( 0 => 'App\\Framework\\Performance\\NestedPerformanceTracker', 1 => 'isEnabled', 2 => 'App\\Framework\\Performance\\NestedPerformanceTracker', ), 3 => array ( 0 => 'App\\Framework\\Performance\\NestedPerformanceTracker', 1 => 'findParentOperation', 2 => 'App\\Framework\\Performance\\NestedPerformanceTracker', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'array_splice', 1 => 377, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\NestedPerformanceTracker', ), 1 => 'endOperation', 2 => 145, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\OperationTracker', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\OperationTracker', 1 => 'getActiveOperation', 2 => 'App\\Framework\\Performance\\OperationTracker', ), 1 => array ( 0 => 'App\\Framework\\Performance\\OperationTracker', 1 => 'getCompletedOperation', 2 => 'App\\Framework\\Performance\\OperationTracker', ), 2 => array ( 0 => 'App\\Framework\\Performance\\OperationTracker', 1 => 'getActiveOperations', 2 => 'App\\Framework\\Performance\\OperationTracker', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\PerformanceConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\PerformanceConfig', 1 => 'isSlowQuery', 2 => 'App\\Framework\\Performance\\PerformanceConfig', ), 1 => array ( 0 => 'App\\Framework\\Performance\\PerformanceConfig', 1 => 'useEnhancedCollector', 2 => 'App\\Framework\\Performance\\PerformanceConfig', ), 2 => array ( 0 => 'App\\Framework\\Performance\\PerformanceConfig', 1 => 'isEnabled', 2 => 'App\\Framework\\Performance\\PerformanceConfig', ), 3 => array ( 0 => 'App\\Framework\\Performance\\PerformanceConfig', 1 => 'getThreshold', 2 => 'App\\Framework\\Performance\\PerformanceConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\PerformanceMetric', 1 => 'getKey', 2 => 'App\\Framework\\Performance\\PerformanceMetric', ), 1 => array ( 0 => 'App\\Framework\\Performance\\PerformanceMetric', 1 => 'getCategory', 2 => 'App\\Framework\\Performance\\PerformanceMetric', ), 2 => array ( 0 => 'App\\Framework\\Performance\\PerformanceMetric', 1 => 'getContextObject', 2 => 'App\\Framework\\Performance\\PerformanceMetric', ), 3 => array ( 0 => 'App\\Framework\\Performance\\PerformanceMetric', 1 => 'getCount', 2 => 'App\\Framework\\Performance\\PerformanceMetric', ), 4 => array ( 0 => 'App\\Framework\\Performance\\PerformanceMetric', 1 => 'getMeasurements', 2 => 'App\\Framework\\Performance\\PerformanceMetric', ), 5 => array ( 0 => 'App\\Framework\\Performance\\PerformanceMetric', 1 => 'getValues', 2 => 'App\\Framework\\Performance\\PerformanceMetric', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\PerformanceService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\PerformanceService', 1 => 'getConfig', 2 => 'App\\Framework\\Performance\\PerformanceService', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 179, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\PerformanceServiceInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/CategoryMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', 1 => 'hasMetrics', 2 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', 1 => 'hasCalls', 2 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', 1 => 'getAverageCallsPerMetric', 2 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', ), 3 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', 1 => 'getSlowestMetric', 2 => 'App\\Framework\\Performance\\ValueObjects\\CategoryMetrics', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 160, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', 1 => 'getDuration', 2 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', 1 => 'getMemory', 2 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', 1 => 'getTimestamp', 2 => 'App\\Framework\\Performance\\ValueObjects\\Measurement', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MeasurementCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Performance\\ValueObjects\\MeasurementCollection', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MeasurementCollection', 1 => 'toArray', 2 => 'App\\Framework\\Performance\\ValueObjects\\MeasurementCollection', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MeasurementCollection', 1 => 'getFirst', 2 => 'App\\Framework\\Performance\\ValueObjects\\MeasurementCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 207, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MemorySummary', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MetricContext', 1 => 'get', 2 => 'App\\Framework\\Performance\\ValueObjects\\MetricContext', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MetricContext', 1 => 'isEmpty', 2 => 'App\\Framework\\Performance\\ValueObjects\\MetricContext', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\MetricContext', 1 => 'equals', 2 => 'App\\Framework\\Performance\\ValueObjects\\MetricContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\NestedMeasurement', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', 1 => 'getCategoryMetrics', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', 1 => 'getMetricsCount', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', 1 => 'hasMetrics', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', ), 3 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', 1 => 'getMemorySummary', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceReport', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 127, ), 1 => array ( 0 => 'usort', 1 => 144, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', 1 => 'getScore', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', 1 => 'getMetrics', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', 1 => 'getResponseTime', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceScore', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', 1 => 'isCompleted', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', ), 1 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', 1 => 'getCacheHitRate', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', ), 2 => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', 1 => 'getErrorRate', 2 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSnapshot', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSummary.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Performance\\ValueObjects\\PerformanceSummary', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataMode.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\DataMode', 1 => 'getIndicator', 2 => 'App\\Framework\\QrCode\\DataMode', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\DataMode', 1 => 'getEfficiency', 2 => 'App\\Framework\\QrCode\\DataMode', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ErrorCorrectionLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 1 => 'forTotp', 2 => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 1 => 'getCapacityPercentage', 2 => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', ), 2 => array ( 0 => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 1 => 'getFormatIndicator', 2 => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\MatrixGenerator', 1 => 'isFinderPatternArea', 2 => 'App\\Framework\\QrCode\\MatrixGenerator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\Patterns\\FormatInfo', 1 => 'applyFormatErrorCorrection', 2 => 'App\\Framework\\QrCode\\Patterns\\FormatInfo', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\Patterns\\FormatInfo', 1 => 'getPlacementPositions', 2 => 'App\\Framework\\QrCode\\Patterns\\FormatInfo', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\QrCode\\QrCodeGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeMatrix', 1 => 'getSize', 2 => 'App\\Framework\\QrCode\\QrCodeMatrix', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeMatrix', 1 => 'getModules', 2 => 'App\\Framework\\QrCode\\QrCodeMatrix', ), 2 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeMatrix', 1 => 'toString', 2 => 'App\\Framework\\QrCode\\QrCodeMatrix', ), 3 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeMatrix', 1 => 'isValidPosition', 2 => 'App\\Framework\\QrCode\\QrCodeMatrix', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeVersion.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeVersion', 1 => 'getVersion', 2 => 'App\\Framework\\QrCode\\QrCodeVersion', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeVersion', 1 => 'getModuleCount', 2 => 'App\\Framework\\QrCode\\QrCodeVersion', ), 2 => array ( 0 => 'App\\Framework\\QrCode\\QrCodeVersion', 1 => 'hasAlignmentPatterns', 2 => 'App\\Framework\\QrCode\\QrCodeVersion', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', 1 => 'add', 2 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', 1 => 'subtract', 2 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', ), 2 => array ( 0 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', 1 => 'multiply', 2 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', ), 3 => array ( 0 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', 1 => 'power', 2 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', ), 4 => array ( 0 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', 1 => 'exp', 2 => 'App\\Framework\\QrCode\\ReedSolomon\\GaloisField', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\ReedSolomon\\Polynomial', 1 => 'getCoefficients', 2 => 'App\\Framework\\QrCode\\ReedSolomon\\Polynomial', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\QrCode\\Structure\\QrCodeBlock', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QrCode\\SvgRenderer', 1 => 'createSvgFooter', 2 => 'App\\Framework\\QrCode\\SvgRenderer', ), 1 => array ( 0 => 'App\\Framework\\QrCode\\SvgRenderer', 1 => 'getConfiguration', 2 => 'App\\Framework\\QrCode\\SvgRenderer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\ForbiddenFunctionsRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\ForbiddenFunctionsRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\PreferValueObjectsRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\PreferValueObjectsRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\TestRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\TestRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseClockAbstractionRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseClockAbstractionRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseDateTimeAbstractionRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseDateTimeAbstractionRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseFrameworkAbstractionsRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseFrameworkAbstractionsRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseTimerAbstractionRule', 1 => 'getNodeType', 2 => 'App\\Framework\\Quality\\PHPStan\\Rules\\UseTimerAbstractionRule', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\QueryBus\\DefaultQueryBus', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\QueryBus\\QueryBusInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\QueryBus\\QueryHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QueryBus\\QueryHandlerCompiler', 1 => 'getAttributeClass', 2 => 'App\\Framework\\QueryBus\\QueryHandlerCompiler', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 64, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\QueryBus\\QueryHandlerMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 69, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Queue\\QueueInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGeneratorInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Random\\RandomGeneratorInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Random/TestableRandomGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Random\\TestableRandomGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\Examples\\SlidingWindowRateLimitExample', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'print_r', 1 => 65, ), 1 => array ( 0 => 'print_r', 1 => 106, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitResult', 1 => 'isAllowed', 2 => 'App\\Framework\\RateLimit\\RateLimitResult', ), 1 => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitResult', 1 => 'isExceeded', 2 => 'App\\Framework\\RateLimit\\RateLimitResult', ), 2 => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitResult', 1 => 'getLimit', 2 => 'App\\Framework\\RateLimit\\RateLimitResult', ), 3 => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitResult', 1 => 'getCurrent', 2 => 'App\\Framework\\RateLimit\\RateLimitResult', ), 4 => array ( 0 => 'App\\Framework\\RateLimit\\RateLimitResult', 1 => 'getRetryAfter', 2 => 'App\\Framework\\RateLimit\\RateLimitResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\RateLimiter', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 133, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\SlidingWindowRateLimiter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\RateLimit\\SlidingWindowTokenBucket', 1 => 'getCapacity', 2 => 'App\\Framework\\RateLimit\\SlidingWindowTokenBucket', ), 1 => array ( 0 => 'App\\Framework\\RateLimit\\SlidingWindowTokenBucket', 1 => 'getRefillRate', 2 => 'App\\Framework\\RateLimit\\SlidingWindowTokenBucket', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\Storage\\CacheStorage', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TokenBucket.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\RateLimit\\TokenBucket', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\RateLimit\\TokenBucket', 1 => 'canConsume', 2 => 'App\\Framework\\RateLimit\\TokenBucket', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Redis\\RedisConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnection.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Redis\\RedisConnection', 1 => 'getDatabase', 2 => 'App\\Framework\\Redis\\RedisConnection', ), 1 => array ( 0 => 'App\\Framework\\Redis\\RedisConnection', 1 => 'getName', 2 => 'App\\Framework\\Redis\\RedisConnection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'Redis', ), 1 => 'setOption', 2 => 107, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Redis\\RedisConnectionPool', 1 => 'hasConnection', 2 => 'App\\Framework\\Redis\\RedisConnectionPool', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Redis\\RedisFactory', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Redis\\RedisFactory', 1 => 'getPool', 2 => 'App\\Framework\\Redis\\RedisFactory', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisPoolInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Redis\\RedisPoolInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Async\\AsyncReflectionProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Async\\AsyncReflectionProcessor', 1 => 'getOperationStatus', 2 => 'App\\Framework\\Reflection\\Async\\AsyncReflectionProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\BatchOperations\\ReflectionBatchProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Builder\\ReflectionBuilder', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Cache\\ClassCache', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 86, ), 1 => array ( 0 => 'asort', 1 => 344, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Cache\\MetadataCacheManager', ), 1 => 'getMetadata', 2 => 97, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Cache\\MetadataCacheManager', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Cache\\MethodCache', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 244, ), 1 => array ( 0 => 'gc_collect_cycles', 1 => 275, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\CachedReflectionProvider', 1 => 'getCache', 2 => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/AttributeCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Collections\\AttributeCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\AttributeCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Reflection\\Collections\\AttributeCollection', ), 1 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\AttributeCollection', 1 => 'toArray', 2 => 'App\\Framework\\Reflection\\Collections\\AttributeCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/MethodCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', ), 1 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', 1 => 'toArray', 2 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', ), 2 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', 1 => 'first', 2 => 'App\\Framework\\Reflection\\Collections\\MethodCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/ParameterCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', ), 1 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', 1 => 'toArray', 2 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', ), 2 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', 1 => 'getByPosition', 2 => 'App\\Framework\\Reflection\\Collections\\ParameterCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/PropertyCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Collections\\PropertyCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\PropertyCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Reflection\\Collections\\PropertyCollection', ), 1 => array ( 0 => 'App\\Framework\\Reflection\\Collections\\PropertyCollection', 1 => 'toArray', 2 => 'App\\Framework\\Reflection\\Collections\\PropertyCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Factory\\ReflectionCacheFactory', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Cache\\ClassCache', ), 1 => 'getClass', 2 => 100, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\LazyReflectionProxy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\LazyReflectionProxy', 1 => 'isLoaded', 2 => 'App\\Framework\\Reflection\\LazyReflectionProxy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\ReflectionCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\ReflectionCache', 1 => 'getPerformanceStatus', 2 => 'App\\Framework\\Reflection\\ReflectionCache', ), 1 => array ( 0 => 'App\\Framework\\Reflection\\ReflectionCache', 1 => 'getOptimizationRecommendations', 2 => 'App\\Framework\\Reflection\\ReflectionCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Strategies\\CacheWarmupStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Strategies\\CacheWarmupStrategy', 1 => 'warmupAttributeClasses', 2 => 'App\\Framework\\Reflection\\Strategies\\CacheWarmupStrategy', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Cache\\ClassCache', ), 1 => 'getClass', 2 => 35, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\Cache\\ClassCache', ), 1 => 'getClass', 2 => 50, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/MemoryAwareCacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\Strategies\\MemoryAwareCacheStrategy', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'asort', 1 => 59, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionAttribute.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionAttribute', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionMethod', 1 => 'getDeclaringClass', 2 => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 1 => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionMethod', 1 => 'getName', 2 => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionParameter', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Reflection\\WrappedReflectionParameter', 1 => 'getPosition', 2 => 'App\\Framework\\Reflection\\WrappedReflectionParameter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryAttemptEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', 1 => 'isFirstAttempt', 2 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', 1 => 'isRetryAttempt', 2 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', ), 2 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', 1 => 'isLastAttempt', 2 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', ), 3 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', 1 => 'getOperationType', 2 => 'App\\Framework\\Retry\\Events\\RetryAttemptEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', 1 => 'getAttemptCount', 2 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', 1 => 'getLastException', 2 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', ), 2 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', 1 => 'getOperationType', 2 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', ), 3 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', 1 => 'getAttemptHistory', 2 => 'App\\Framework\\Retry\\Events\\RetryFailedEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', 1 => 'wasRetriedOperation', 2 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', 1 => 'getAttemptCount', 2 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', ), 2 => array ( 0 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', 1 => 'getOperationType', 2 => 'App\\Framework\\Retry\\Events\\RetrySucceededEvent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Metrics\\RetryMetrics', 1 => 'getStats', 2 => 'App\\Framework\\Retry\\Metrics\\RetryMetrics', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Metrics\\RetryMetrics', 1 => 'getRetryRate', 2 => 'App\\Framework\\Retry\\Metrics\\RetryMetrics', ), 2 => array ( 0 => 'App\\Framework\\Retry\\Metrics\\RetryMetrics', 1 => 'getAverageAttemptsPerOperation', 2 => 'App\\Framework\\Retry\\Metrics\\RetryMetrics', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 126, ), 1 => array ( 0 => 'arsort', 1 => 135, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\RetryResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\RetryResult', 1 => 'wasSuccessful', 2 => 'App\\Framework\\Retry\\RetryResult', ), 1 => array ( 0 => 'App\\Framework\\Retry\\RetryResult', 1 => 'getAttemptCount', 2 => 'App\\Framework\\Retry\\RetryResult', ), 2 => array ( 0 => 'App\\Framework\\Retry\\RetryResult', 1 => 'getTotalDuration', 2 => 'App\\Framework\\Retry\\RetryResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy', 1 => 'getMaxAttempts', 2 => 'App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy', 1 => 'isRetryableException', 2 => 'App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\Strategies\\FixedRetryStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Strategies\\FixedRetryStrategy', 1 => 'getMaxAttempts', 2 => 'App\\Framework\\Retry\\Strategies\\FixedRetryStrategy', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Strategies\\FixedRetryStrategy', 1 => 'isRetryableException', 2 => 'App\\Framework\\Retry\\Strategies\\FixedRetryStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Retry\\Strategies\\LinearDelayStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Retry\\Strategies\\LinearDelayStrategy', 1 => 'getMaxAttempts', 2 => 'App\\Framework\\Retry\\Strategies\\LinearDelayStrategy', ), 1 => array ( 0 => 'App\\Framework\\Retry\\Strategies\\LinearDelayStrategy', 1 => 'isRetryableException', 2 => 'App\\Framework\\Retry\\Strategies\\LinearDelayStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\CompiledPattern', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\CompiledPattern', 1 => 'getRouteData', 2 => 'App\\Framework\\Router\\CompiledPattern', ), 1 => array ( 0 => 'App\\Framework\\Router\\CompiledPattern', 1 => 'getBatches', 2 => 'App\\Framework\\Router\\CompiledPattern', ), 2 => array ( 0 => 'App\\Framework\\Router\\CompiledPattern', 1 => 'hasOptimizedBatches', 2 => 'App\\Framework\\Router\\CompiledPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'getStaticRoute', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), 1 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'getCompiledPattern', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), 2 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'getStaticRoutesForSubdomain', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), 3 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'getNamedRoute', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), 4 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'hasNamedRoute', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), 5 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'getAllNamedRoutes', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), 6 => array ( 0 => 'App\\Framework\\Router\\CompiledRoutes', 1 => 'getStaticRoutes', 2 => 'App\\Framework\\Router\\CompiledRoutes', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\ControllerRequestFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\GenericActionResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\HttpRouter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/NoRouteMatch.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\NoRouteMatch', 1 => 'isMatch', 2 => 'App\\Framework\\Router\\NoRouteMatch', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\ParameterProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\ContentNegotiationResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/FileResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\FileResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/HtmlResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\HtmlResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\JsonResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/Redirect.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\Redirect', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseEvent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\SseEvent', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', 1 => 'getInitialEvents', 2 => 'App\\Framework\\Router\\Result\\SseResult', ), 1 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResult', 1 => 'hasCallback', 2 => 'App\\Framework\\Router\\Result\\SseResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', 1 => 'getCallback', 2 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 1 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', 1 => 'getMaxDuration', 2 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 2 => array ( 0 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', 1 => 'getHeartbeatInterval', 2 => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\ViewResult', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getOnConnect', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 1 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getOnMessage', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 2 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getOnClose', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 3 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getOnError', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 4 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getSubprotocols', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 5 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getMaxMessageSize', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), 6 => array ( 0 => 'App\\Framework\\Router\\Result\\WebSocketResult', 1 => 'getPingInterval', 2 => 'App\\Framework\\Router\\Result\\WebSocketResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouteCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\RouteCollection', 1 => 'getStatic', 2 => 'App\\Framework\\Router\\RouteCollection', ), 1 => array ( 0 => 'App\\Framework\\Router\\RouteCollection', 1 => 'getDynamic', 2 => 'App\\Framework\\Router\\RouteCollection', ), 2 => array ( 0 => 'App\\Framework\\Router\\RouteCollection', 1 => 'has', 2 => 'App\\Framework\\Router\\RouteCollection', ), 3 => array ( 0 => 'App\\Framework\\Router\\RouteCollection', 1 => 'getByMethod', 2 => 'App\\Framework\\Router\\RouteCollection', ), 4 => array ( 0 => 'App\\Framework\\Router\\RouteCollection', 1 => 'getByName', 2 => 'App\\Framework\\Router\\RouteCollection', ), 5 => array ( 0 => 'App\\Framework\\Router\\RouteCollection', 1 => 'hasName', 2 => 'App\\Framework\\Router\\RouteCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouteContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\RouteContext', 1 => 'isSuccess', 2 => 'App\\Framework\\Router\\RouteContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouteData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\RouteData', 1 => 'toArray', 2 => 'App\\Framework\\Router\\RouteData', ), 1 => array ( 0 => 'App\\Framework\\Router\\RouteData', 1 => 'extractParameterValues', 2 => 'App\\Framework\\Router\\RouteData', ), 2 => array ( 0 => 'App\\Framework\\Router\\RouteData', 1 => 'shouldMatch', 2 => 'App\\Framework\\Router\\RouteData', ), 3 => array ( 0 => 'App\\Framework\\Router\\RouteData', 1 => 'getComplexity', 2 => 'App\\Framework\\Router\\RouteData', ), 4 => array ( 0 => 'App\\Framework\\Router\\RouteData', 1 => 'hasParameter', 2 => 'App\\Framework\\Router\\RouteData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouteDispatcher', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteMatchSuccess.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouteMatchSuccess', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\RouteMatchSuccess', 1 => 'isMatch', 2 => 'App\\Framework\\Router\\RouteMatchSuccess', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouteResponder', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterPerformanceMonitor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\RouterPerformanceMonitor', 1 => 'getAllStats', 2 => 'App\\Framework\\Router\\RouterPerformanceMonitor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\RouterSetup', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\UrlGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/MethodParameter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', 1 => 'isRequired', 2 => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', ), 1 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', 1 => 'isOfType', 2 => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), 1 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 1 => 'getByName', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), 2 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 1 => 'toArray', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', 1 => 'toArray', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', ), 1 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', 1 => 'has', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', ), 2 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', 1 => 'get', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', ), 3 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', 1 => 'isEmpty', 2 => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', 1 => 'get', 2 => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', ), 1 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', 1 => 'all', 2 => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', ), 2 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', 1 => 'isEmpty', 2 => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', 1 => 'isDefault', 2 => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', ), 1 => array ( 0 => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', 1 => 'toString', 2 => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/BulkIndexResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\BulkIndexResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\BulkIndexResult', 1 => 'isFullySuccessful', 2 => 'App\\Framework\\Search\\BulkIndexResult', ), 1 => array ( 0 => 'App\\Framework\\Search\\BulkIndexResult', 1 => 'hasErrors', 2 => 'App\\Framework\\Search\\BulkIndexResult', ), 2 => array ( 0 => 'App\\Framework\\Search\\BulkIndexResult', 1 => 'hasPartialSuccess', 2 => 'App\\Framework\\Search\\BulkIndexResult', ), 3 => array ( 0 => 'App\\Framework\\Search\\BulkIndexResult', 1 => 'getSuccessRate', 2 => 'App\\Framework\\Search\\BulkIndexResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseIndexManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseIndexManager', 1 => 'getColumnDefinition', 2 => 'App\\Framework\\Search\\Engines\\DatabaseIndexManager', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseSearchConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseSearchConfig', 1 => 'getHighlightOpenTag', 2 => 'App\\Framework\\Search\\Engines\\DatabaseSearchConfig', ), 1 => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseSearchConfig', 1 => 'getHighlightCloseTag', 2 => 'App\\Framework\\Search\\Engines\\DatabaseSearchConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseSearchEngine', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseSearchEngine', 1 => 'getName', 2 => 'App\\Framework\\Search\\Engines\\DatabaseSearchEngine', ), 1 => array ( 0 => 'App\\Framework\\Search\\Engines\\DatabaseSearchEngine', 1 => 'getFilterParams', 2 => 'App\\Framework\\Search\\Engines\\DatabaseSearchEngine', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchDocument.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchDocument', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchDocument', 1 => 'hasMetadata', 2 => 'App\\Framework\\Search\\SearchDocument', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchDocument', 1 => 'toArray', 2 => 'App\\Framework\\Search\\SearchDocument', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchEngineStats', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchEngineStats', 1 => 'hasIndexes', 2 => 'App\\Framework\\Search\\SearchEngineStats', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchEngineStats', 1 => 'getDocumentsForIndex', 2 => 'App\\Framework\\Search\\SearchEngineStats', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchEventListener', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchIndexingService', ), 1 => 'indexEntity', 2 => 29, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchIndexingService', ), 1 => 'updateEntity', 2 => 44, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchIndexingService', ), 1 => 'removeEntity', 2 => 59, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchIndexingService', ), 1 => 'bulkIndexEntities', 2 => 80, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchFieldConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchFieldConfig', 1 => 'isText', 2 => 'App\\Framework\\Search\\SearchFieldConfig', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchFieldConfig', 1 => 'isKeyword', 2 => 'App\\Framework\\Search\\SearchFieldConfig', ), 2 => array ( 0 => 'App\\Framework\\Search\\SearchFieldConfig', 1 => 'isDate', 2 => 'App\\Framework\\Search\\SearchFieldConfig', ), 3 => array ( 0 => 'App\\Framework\\Search\\SearchFieldConfig', 1 => 'isBoosted', 2 => 'App\\Framework\\Search\\SearchFieldConfig', ), 4 => array ( 0 => 'App\\Framework\\Search\\SearchFieldConfig', 1 => 'toArray', 2 => 'App\\Framework\\Search\\SearchFieldConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchFilter', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchFilter', 1 => 'toArray', 2 => 'App\\Framework\\Search\\SearchFilter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchHit', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchHit', 1 => 'hasHighlight', 2 => 'App\\Framework\\Search\\SearchHit', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchHit', 1 => 'getHighlightFor', 2 => 'App\\Framework\\Search\\SearchHit', ), 2 => array ( 0 => 'App\\Framework\\Search\\SearchHit', 1 => 'hasMetadata', 2 => 'App\\Framework\\Search\\SearchHit', ), 3 => array ( 0 => 'App\\Framework\\Search\\SearchHit', 1 => 'getMetadata', 2 => 'App\\Framework\\Search\\SearchHit', ), 4 => array ( 0 => 'App\\Framework\\Search\\SearchHit', 1 => 'toArray', 2 => 'App\\Framework\\Search\\SearchHit', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchIndexConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchIndexConfig', 1 => 'hasField', 2 => 'App\\Framework\\Search\\SearchIndexConfig', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchIndexConfig', 1 => 'getField', 2 => 'App\\Framework\\Search\\SearchIndexConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchIndexStats', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchIndexStats', 1 => 'hasDocuments', 2 => 'App\\Framework\\Search\\SearchIndexStats', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchIndexStats', 1 => 'hasQueries', 2 => 'App\\Framework\\Search\\SearchIndexStats', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchIndexingService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchQuery', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchQuery', 1 => 'hasFilters', 2 => 'App\\Framework\\Search\\SearchQuery', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchQuery', 1 => 'hasBoosts', 2 => 'App\\Framework\\Search\\SearchQuery', ), 2 => array ( 0 => 'App\\Framework\\Search\\SearchQuery', 1 => 'hasFieldRestriction', 2 => 'App\\Framework\\Search\\SearchQuery', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchResult', 1 => 'isEmpty', 2 => 'App\\Framework\\Search\\SearchResult', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchResult', 1 => 'hasAggregations', 2 => 'App\\Framework\\Search\\SearchResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchService', 1 => 'getEngine', 2 => 'App\\Framework\\Search\\SearchService', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchService', 1 => 'getIndexManager', 2 => 'App\\Framework\\Search\\SearchService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchSortBy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchSortBy', 1 => 'hasFields', 2 => 'App\\Framework\\Search\\SearchSortBy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortField.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchSortField', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchSortField', 1 => 'toArray', 2 => 'App\\Framework\\Search\\SearchSortField', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchableAdapter', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableAdapter', 1 => 'getEntity', 2 => 'App\\Framework\\Search\\SearchableAdapter', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchableAdapter', 1 => 'getEntityType', 2 => 'App\\Framework\\Search\\SearchableAdapter', ), 2 => array ( 0 => 'App\\Framework\\Search\\SearchableAdapter', 1 => 'getBoosts', 2 => 'App\\Framework\\Search\\SearchableAdapter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Search\\SearchableMapping', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMapping', 1 => 'hasField', 2 => 'App\\Framework\\Search\\SearchableMapping', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchableMapping', 1 => 'getFieldMapping', 2 => 'App\\Framework\\Search\\SearchableMapping', ), 2 => array ( 0 => 'App\\Framework\\Search\\SearchableMapping', 1 => 'getBoost', 2 => 'App\\Framework\\Search\\SearchableMapping', ), 3 => array ( 0 => 'App\\Framework\\Search\\FieldMapping', 1 => 'getTransformer', 2 => 'App\\Framework\\Search\\FieldMapping', ), 4 => array ( 0 => 'App\\Framework\\Search\\FieldMapping', 1 => 'hasTransformer', 2 => 'App\\Framework\\Search\\FieldMapping', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingRegistry', 1 => 'getByEntityType', 2 => 'App\\Framework\\Search\\SearchableMappingRegistry', ), 1 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingRegistry', 1 => 'getByEntityClass', 2 => 'App\\Framework\\Search\\SearchableMappingRegistry', ), 2 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingRegistry', 1 => 'hasMapping', 2 => 'App\\Framework\\Search\\SearchableMappingRegistry', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'entityType', 2 => 85, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'idField', 2 => 89, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'autoIndex', 2 => 93, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'enabled', 2 => 97, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'field', 2 => 104, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'field', 2 => 114, ), 6 => array ( 0 => array ( 0 => 'App\\Framework\\Search\\SearchableMappingBuilder', ), 1 => 'boost', 2 => 120, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfToken.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Security\\CsrfToken', 1 => 'toString', 2 => 'App\\Framework\\Security\\CsrfToken', ), 1 => array ( 0 => 'App\\Framework\\Security\\CsrfToken', 1 => '__toString', 2 => 'App\\Framework\\Security\\CsrfToken', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\CsrfTokenData', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\CsrfTokenGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\EntityManagerSigningKeyRepository', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\HttpClientSigningMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\InMemorySigningKeyRepository', 1 => 'findByKeyId', 2 => 'App\\Framework\\Security\\RequestSigning\\InMemorySigningKeyRepository', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/Migrations/CreateSigningKeysTable.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\Migrations\\CreateSigningKeysTable', 1 => 'getDescription', 2 => 'App\\Framework\\Security\\RequestSigning\\Migrations\\CreateSigningKeysTable', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestSignature', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestSigner', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestSigningConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestSigningInitializer', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\InMemorySigningKeyRepository', ), 1 => 'addDefaultTestKey', 2 => 99, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestSigningMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestSigningService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\RequestVerifier', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningAlgorithm.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\SigningAlgorithm', 1 => 'getHashAlgorithm', 2 => 'App\\Framework\\Security\\RequestSigning\\SigningAlgorithm', ), 1 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\SigningAlgorithm', 1 => 'isSymmetric', 2 => 'App\\Framework\\Security\\RequestSigning\\SigningAlgorithm', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\SigningString', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\SigningString', 1 => 'getDefaultHeaders', 2 => 'App\\Framework\\Security\\RequestSigning\\SigningString', ), 1 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\SigningString', 1 => 'getRecommendedHeaders', 2 => 'App\\Framework\\Security\\RequestSigning\\SigningString', ), 2 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\SigningString', 1 => 'getSecurityHeaders', 2 => 'App\\Framework\\Security\\RequestSigning\\SigningString', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/VerificationResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\VerificationResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\VerificationResult', 1 => 'isSuccess', 2 => 'App\\Framework\\Security\\RequestSigning\\VerificationResult', ), 1 => array ( 0 => 'App\\Framework\\Security\\RequestSigning\\VerificationResult', 1 => 'isFailure', 2 => 'App\\Framework\\Security\\RequestSigning\\VerificationResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Serializer\\Json\\JsonSerializer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 1 => 'getMimeType', 2 => 'App\\Framework\\Serializer\\Json\\JsonSerializer', ), 1 => array ( 0 => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 1 => 'getFileExtension', 2 => 'App\\Framework\\Serializer\\Json\\JsonSerializer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'gc_collect_cycles', 1 => 115, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializerConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Serializer\\Php\\PhpSerializer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Serializer\\Php\\PhpSerializer', 1 => 'getMimeType', 2 => 'App\\Framework\\Serializer\\Php\\PhpSerializer', ), 1 => array ( 0 => 'App\\Framework\\Serializer\\Php\\PhpSerializer', 1 => 'getFileExtension', 2 => 'App\\Framework\\Serializer\\Php\\PhpSerializer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'restore_error_handler', 1 => 102, ), 1 => array ( 0 => 'call_user_func', 1 => 103, ), 2 => array ( 0 => 'restore_error_handler', 1 => 119, ), 3 => array ( 0 => 'restore_error_handler', 1 => 123, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Serializer\\Php\\PhpSerializerConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Serializer\\Php\\PhpSerializerConfig', 1 => 'getOptions', 2 => 'App\\Framework\\Serializer\\Php\\PhpSerializerConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapEntry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Sitemap\\SitemapEntry', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Sitemap\\SitemapGenerator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanAggregator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanAggregator', 1 => 'getIdentifier', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanAggregator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 1 => 'isEmpty', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 1 => 'hasMinimumRequests', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', ), 2 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 1 => 'isFailureRateExceeded', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', ), 3 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 1 => 'isSuccessRateBelow', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', ), 4 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 1 => 'toArray', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingAggregator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingAggregator', 1 => 'getIdentifier', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingAggregator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', 1 => 'isEmpty', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', 1 => 'hasMinimum', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', ), 2 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', 1 => 'toArray', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\CountingResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericAggregator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericAggregator', 1 => 'getIdentifier', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericAggregator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 31, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', 1 => 'isEmpty', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', 1 => 'hasMinimumSamples', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', ), 2 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', 1 => 'isAverageAbove', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', ), 3 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', 1 => 'isPercentile95Above', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', ), 4 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', 1 => 'toArray', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\NumericResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator', 1 => 'getIdentifier', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitAggregator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 37, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult', 1 => 'hasBurstPattern', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult', 1 => 'getBurstAnalysis', 2 => 'App\\Framework\\SlidingWindow\\Aggregator\\RateLimitResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow', 1 => 'getWindowSize', 2 => 'App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow', 1 => 'getIdentifier', 2 => 'App\\Framework\\SlidingWindow\\CacheBasedSlidingWindow', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\InMemorySlidingWindow', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\InMemorySlidingWindow', 1 => 'getWindowSize', 2 => 'App\\Framework\\SlidingWindow\\InMemorySlidingWindow', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\InMemorySlidingWindow', 1 => 'getIdentifier', 2 => 'App\\Framework\\SlidingWindow\\InMemorySlidingWindow', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\SlidingWindowFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', 1 => 'hasMinimumCount', 2 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', ), 1 => array ( 0 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', 1 => 'getAggregatedValue', 2 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', ), 2 => array ( 0 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', 1 => 'isEmpty', 2 => 'App\\Framework\\SlidingWindow\\SlidingWindowStats', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/WindowEntry.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\SlidingWindow\\WindowEntry', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\ActionResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\ActionResult', 1 => 'isSuccess', 2 => 'App\\Framework\\Smartlinks\\Actions\\ActionResult', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\ActionResult', 1 => 'hasRedirect', 2 => 'App\\Framework\\Smartlinks\\Actions\\ActionResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry', 1 => 'get', 2 => 'App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry', 1 => 'has', 2 => 'App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry', ), 2 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry', 1 => 'getAll', 2 => 'App\\Framework\\Smartlinks\\Actions\\DefaultActionRegistry', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction', 1 => 'getName', 2 => 'App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction', 1 => 'getRequiredPermissions', 2 => 'App\\Framework\\Smartlinks\\Actions\\DocumentAccessAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction', 1 => 'getName', 2 => 'App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction', 1 => 'getRequiredPermissions', 2 => 'App\\Framework\\Smartlinks\\Actions\\EmailVerificationAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', 1 => 'getName', 2 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', 1 => 'getDefaultConfig', 2 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', ), 2 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', 1 => 'validatePayload', 2 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', ), 3 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', 1 => 'getRequiredPermissions', 2 => 'App\\Framework\\Smartlinks\\Actions\\GenericDataAccessAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\PasswordResetAction', 1 => 'getName', 2 => 'App\\Framework\\Smartlinks\\Actions\\PasswordResetAction', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\Actions\\PasswordResetAction', 1 => 'getRequiredPermissions', 2 => 'App\\Framework\\Smartlinks\\Actions\\PasswordResetAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Commands\\ExecuteSmartlinkCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Commands\\ExecuteSmartlinkHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Commands\\GenerateSmartlinkCommand', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Commands\\GenerateSmartlinkHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService', 1 => 'cleanupExpired', 2 => 'App\\Framework\\Smartlinks\\Services\\CacheSmartLinkService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\Services\\InMemorySmartLinkService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartLinkToken.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\SmartLinkToken', 1 => '__toString', 2 => 'App\\Framework\\Smartlinks\\SmartLinkToken', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\SmartlinkData', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Smartlinks\\SmartlinkInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Smartlinks\\TokenAction', 1 => 'equals', 2 => 'App\\Framework\\Smartlinks\\TokenAction', ), 1 => array ( 0 => 'App\\Framework\\Smartlinks\\TokenAction', 1 => '__toString', 2 => 'App\\Framework\\Smartlinks\\TokenAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\StateManagement\\StateManagerFactory', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\StateManagement\\StateManagerStatistics', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\StateManagement\\StateManagerStatistics', 1 => 'getTotalOperations', 2 => 'App\\Framework\\StateManagement\\StateManagerStatistics', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\StaticSite\\RouteCollector', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\StaticSite\\StaticPageCollector', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\StaticSite\\StaticSiteMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\StaticSite\\StaticSiteMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\SyntaxHighlighter\\SyntaxHighlighter', ), 1 => 'resetCssOutput', 2 => 49, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter', 1 => 'getName', 2 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\ConsoleFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', 1 => 'getName', 2 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', ), 1 => array ( 0 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', 1 => 'getDefaultThemeCss', 2 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', ), 2 => array ( 0 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', 1 => 'getLightThemeCss', 2 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', ), 3 => array ( 0 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', 1 => 'generateCustomThemeCss', 2 => 'App\\Framework\\SyntaxHighlighter\\Formatters\\HtmlFormatter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\Adapters\\PerformanceCollectorAdapter', 1 => 'isEnabled', 2 => 'App\\Framework\\Telemetry\\Adapters\\PerformanceCollectorAdapter', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\UnifiedTelemetryService', ), 1 => 'startOperation', 2 => 68, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/ExporterConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'getEndpoint', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 1 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'getProtocol', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 2 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'getOptions', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 3 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'getOption', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 4 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'hasOption', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 5 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'isHttpExporter', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), 6 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', 1 => 'isFileExporter', 2 => 'App\\Framework\\Telemetry\\Config\\ExporterConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/TelemetryConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getServiceName', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 1 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getServiceVersion', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 2 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getEnvironment', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 3 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getSamplingRatio', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 4 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getExporters', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 5 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getResourceAttributes', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 6 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'isEnabled', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 7 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'hasExporter', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), 8 => array ( 0 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', 1 => 'getExporter', 2 => 'App\\Framework\\Telemetry\\Config\\TelemetryConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\Exporters\\PrometheusExporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\Middleware\\TelemetryDatabaseMiddleware', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\Middleware\\TelemetryDatabaseMiddleware', 1 => 'getPriority', 2 => 'App\\Framework\\Telemetry\\Middleware\\TelemetryDatabaseMiddleware', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\Middleware\\TelemetryHttpMiddleware', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'fail', 2 => 62, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'end', 2 => 69, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'addAttribute', 2 => 137, ), 3 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'addAttribute', 2 => 142, ), 4 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'end', 2 => 154, ), 5 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'end', 2 => 156, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', 1 => 'getId', 2 => 'App\\Framework\\Telemetry\\OperationHandle', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/TelemetryContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\TelemetryContext', 1 => 'getCurrentOperationId', 2 => 'App\\Framework\\Telemetry\\TelemetryContext', ), 1 => array ( 0 => 'App\\Framework\\Telemetry\\TelemetryContext', 1 => 'getCurrentOperation', 2 => 'App\\Framework\\Telemetry\\TelemetryContext', ), 2 => array ( 0 => 'App\\Framework\\Telemetry\\TelemetryContext', 1 => 'getOperation', 2 => 'App\\Framework\\Telemetry\\TelemetryContext', ), 3 => array ( 0 => 'App\\Framework\\Telemetry\\TelemetryContext', 1 => 'getAllOperations', 2 => 'App\\Framework\\Telemetry\\TelemetryContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\UnifiedTelemetryService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\UnifiedTelemetryService', 1 => 'mapTypeToCategory', 2 => 'App\\Framework\\Telemetry\\UnifiedTelemetryService', ), 1 => array ( 0 => 'App\\Framework\\Telemetry\\UnifiedTelemetryService', 1 => 'getConfig', 2 => 'App\\Framework\\Telemetry\\UnifiedTelemetryService', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Operation', ), 1 => 'addAttribute', 2 => 178, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'end', 2 => 289, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\OperationHandle', ), 1 => 'fail', 2 => 293, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Event', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Event', 1 => 'getMetricName', 2 => 'App\\Framework\\Telemetry\\ValueObjects\\Event', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Metric', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Metric', 1 => 'getPrometheusType', 2 => 'App\\Framework\\Telemetry\\ValueObjects\\Metric', ), 1 => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Metric', 1 => 'getPrometheusHelp', 2 => 'App\\Framework\\Telemetry\\ValueObjects\\Metric', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Operation.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Operation', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Telemetry\\ValueObjects\\Operation', 1 => 'isCompleted', 2 => 'App\\Framework\\Telemetry\\ValueObjects\\Operation', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Parser/DomTemplateParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'libxml_use_internal_errors', 1 => 16, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Template\\Processing\\ProcessorResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tokenizer\\PhpTokenizer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tokenizer\\PhpTokenizer', 1 => 'canStopDiscovery', 2 => 'App\\Framework\\Tokenizer\\PhpTokenizer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/DiscoveryState.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\DiscoveryState', 1 => 'hasSignificantContent', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\DiscoveryState', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\Token', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\Token', 1 => 'isKeyword', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\Token', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', 1 => 'toArray', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), 1 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', 1 => 'get', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), 2 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', 1 => 'groupByType', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), 3 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', 1 => 'groupByLine', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), 4 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), 5 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', 1 => 'first', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenContext', 1 => 'isInScopeType', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenType', 1 => 'getTerminalColor', 2 => 'App\\Framework\\Tokenizer\\ValueObjects\\TokenType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Totp\\TotpConfigurationValidation', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Totp\\TotpConfigurationValidation', 1 => 'hasErrors', 2 => 'App\\Framework\\Totp\\TotpConfigurationValidation', ), 1 => array ( 0 => 'App\\Framework\\Totp\\TotpConfigurationValidation', 1 => 'hasWarnings', 2 => 'App\\Framework\\Totp\\TotpConfigurationValidation', ), 2 => array ( 0 => 'App\\Framework\\Totp\\TotpConfigurationValidation', 1 => 'hasRecommendations', 2 => 'App\\Framework\\Totp\\TotpConfigurationValidation', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Totp\\TotpQrData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Totp\\TotpQrData', 1 => 'getUri', 2 => 'App\\Framework\\Totp\\TotpQrData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Totp\\TotpSecret', 1 => 'getBinary', 2 => 'App\\Framework\\Totp\\TotpSecret', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecurityLevel.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Totp\\TotpSecurityLevel', 1 => 'getLabel', 2 => 'App\\Framework\\Totp\\TotpSecurityLevel', ), 1 => array ( 0 => 'App\\Framework\\Totp\\TotpSecurityLevel', 1 => 'getDescription', 2 => 'App\\Framework\\Totp\\TotpSecurityLevel', ), 2 => array ( 0 => 'App\\Framework\\Totp\\TotpSecurityLevel', 1 => 'isProductionReady', 2 => 'App\\Framework\\Totp\\TotpSecurityLevel', ), 3 => array ( 0 => 'App\\Framework\\Totp\\TotpSecurityLevel', 1 => 'getMinimumBits', 2 => 'App\\Framework\\Totp\\TotpSecurityLevel', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Totp\\TotpService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Totp\\TotpService', 1 => 'getDefaultAlgorithm', 2 => 'App\\Framework\\Totp\\TotpService', ), 1 => array ( 0 => 'App\\Framework\\Totp\\TotpService', 1 => 'getSupportedAlgorithms', 2 => 'App\\Framework\\Totp\\TotpService', ), 2 => array ( 0 => 'App\\Framework\\Totp\\TotpService', 1 => 'getRecommendedChanges', 2 => 'App\\Framework\\Totp\\TotpService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', 1 => 'isSuccess', 2 => 'App\\Framework\\Totp\\TotpVerificationResult', ), 1 => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', 1 => 'isReplayAttack', 2 => 'App\\Framework\\Totp\\TotpVerificationResult', ), 2 => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', 1 => 'getFailureReason', 2 => 'App\\Framework\\Totp\\TotpVerificationResult', ), 3 => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', 1 => 'isCurrentTimeWindow', 2 => 'App\\Framework\\Totp\\TotpVerificationResult', ), 4 => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', 1 => 'isPastTimeWindow', 2 => 'App\\Framework\\Totp\\TotpVerificationResult', ), 5 => array ( 0 => 'App\\Framework\\Totp\\TotpVerificationResult', 1 => 'isFutureTimeWindow', 2 => 'App\\Framework\\Totp\\TotpVerificationResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter', 1 => 'colorize', 2 => 'App\\Framework\\Tracing\\Exporters\\ConsoleTraceExporter', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\Exporters\\DatabaseTraceExporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\Exporters\\FileTraceExporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\Exporters\\JaegerExporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\Exporters\\OpenTelemetryExporter', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/SpanStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tracing\\SpanStatus', 1 => 'isSuccess', 2 => 'App\\Framework\\Tracing\\SpanStatus', ), 1 => array ( 0 => 'App\\Framework\\Tracing\\SpanStatus', 1 => 'isError', 2 => 'App\\Framework\\Tracing\\SpanStatus', ), 2 => array ( 0 => 'App\\Framework\\Tracing\\SpanStatus', 1 => 'getName', 2 => 'App\\Framework\\Tracing\\SpanStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\TraceCollector', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\TraceContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tracing\\TraceContext', 1 => 'getTraceId', 2 => 'App\\Framework\\Tracing\\TraceContext', ), 1 => array ( 0 => 'App\\Framework\\Tracing\\TraceContext', 1 => 'getStartTime', 2 => 'App\\Framework\\Tracing\\TraceContext', ), 2 => array ( 0 => 'App\\Framework\\Tracing\\TraceContext', 1 => 'getActiveSpan', 2 => 'App\\Framework\\Tracing\\TraceContext', ), 3 => array ( 0 => 'App\\Framework\\Tracing\\TraceContext', 1 => 'getAllSpans', 2 => 'App\\Framework\\Tracing\\TraceContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', 1 => 'getEndTime', 2 => 'App\\Framework\\Tracing\\TraceSpan', ), 1 => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', 1 => 'getTags', 2 => 'App\\Framework\\Tracing\\TraceSpan', ), 2 => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', 1 => 'getEvents', 2 => 'App\\Framework\\Tracing\\TraceSpan', ), 3 => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', 1 => 'getErrors', 2 => 'App\\Framework\\Tracing\\TraceSpan', ), 4 => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', 1 => 'isFinished', 2 => 'App\\Framework\\Tracing\\TraceSpan', ), 5 => array ( 0 => 'App\\Framework\\Tracing\\TraceSpan', 1 => 'hasError', 2 => 'App\\Framework\\Tracing\\TraceSpan', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Tracing\\TracingMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Ulid\\Ulid', 1 => '__toString', 2 => 'App\\Framework\\Ulid\\Ulid', ), 1 => array ( 0 => 'App\\Framework\\Ulid\\Ulid', 1 => 'jsonSerialize', 2 => 'App\\Framework\\Ulid\\Ulid', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Ulid\\UlidParser', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/BrowserType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', 1 => 'getDisplayName', 2 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', 1 => 'getEngine', 2 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', ), 2 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', 1 => 'isModern', 2 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', ), 3 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', 1 => 'getModernVersionThreshold', 2 => 'App\\Framework\\UserAgent\\Enums\\BrowserType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/EngineType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\EngineType', 1 => 'getDisplayName', 2 => 'App\\Framework\\UserAgent\\Enums\\EngineType', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\EngineType', 1 => 'isModern', 2 => 'App\\Framework\\UserAgent\\Enums\\EngineType', ), 2 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\EngineType', 1 => 'getDeveloper', 2 => 'App\\Framework\\UserAgent\\Enums\\EngineType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/PlatformType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', 1 => 'getDisplayName', 2 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', 1 => 'isMobile', 2 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', ), 2 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', 1 => 'isDesktop', 2 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', ), 3 => array ( 0 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', 1 => 'getFamily', 2 => 'App\\Framework\\UserAgent\\Enums\\PlatformType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\UserAgent\\ParsedUserAgent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\ParsedUserAgent', 1 => 'getEs2017MinVersion', 2 => 'App\\Framework\\UserAgent\\ParsedUserAgent', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\ParsedUserAgent', 1 => 'getEs2020MinVersion', 2 => 'App\\Framework\\UserAgent\\ParsedUserAgent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/BrowserPatterns.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\BrowserPatterns', 1 => 'getPatterns', 2 => 'App\\Framework\\UserAgent\\Patterns\\BrowserPatterns', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\BrowserPatterns', 1 => 'getFallbackPatterns', 2 => 'App\\Framework\\UserAgent\\Patterns\\BrowserPatterns', ), 2 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\BrowserPatterns', 1 => 'getBotPatterns', 2 => 'App\\Framework\\UserAgent\\Patterns\\BrowserPatterns', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/EnginePatterns.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', 1 => 'getPatterns', 2 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', 1 => 'getBrowserEngineMap', 2 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', ), 2 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', 1 => 'getGeckoVersionMap', 2 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', ), 3 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', 1 => 'getFeatureSupport', 2 => 'App\\Framework\\UserAgent\\Patterns\\EnginePatterns', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/PlatformPatterns.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\PlatformPatterns', 1 => 'getPatterns', 2 => 'App\\Framework\\UserAgent\\Patterns\\PlatformPatterns', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\PlatformPatterns', 1 => 'getWindowsVersionMap', 2 => 'App\\Framework\\UserAgent\\Patterns\\PlatformPatterns', ), 2 => array ( 0 => 'App\\Framework\\UserAgent\\Patterns\\PlatformPatterns', 1 => 'getMobilePatterns', 2 => 'App\\Framework\\UserAgent\\Patterns\\PlatformPatterns', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\UserAgent\\UserAgent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\UserAgent\\UserAgent', 1 => '__toString', 2 => 'App\\Framework\\UserAgent\\UserAgent', ), 1 => array ( 0 => 'App\\Framework\\UserAgent\\UserAgent', 1 => 'toString', 2 => 'App\\Framework\\UserAgent\\UserAgent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\UserAgent\\UserAgentParser', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Exceptions\\ValidationException', 1 => 'getInvalidValue', 2 => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Custom', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Custom', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/DateFormat.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\DateFormat', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Email.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Email', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Email', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Email', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/IsTrue.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\IsTrue', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\IsTrue', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Numeric.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Numeric', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Numeric', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Numeric', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Pattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Pattern', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Pattern', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Pattern', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Phone.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Phone', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Phone', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Phone', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Range.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Range', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Range', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Required.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Required', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Required', 1 => 'validate', 2 => 'App\\Framework\\Validation\\Rules\\Required', ), 1 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Required', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Required', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/StringLength.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\StringLength', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\StringLength', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Ulid.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Ulid', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Ulid', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Ulid', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Url.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Rules\\Url', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\Rules\\Url', 1 => 'getErrorMessages', 2 => 'App\\Framework\\Validation\\Rules\\Url', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\ValidationFormHandler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Validation\\ValidationResult', 1 => 'hasErrors', 2 => 'App\\Framework\\Validation\\ValidationResult', ), 1 => array ( 0 => 'App\\Framework\\Validation\\ValidationResult', 1 => 'getFieldErrors', 2 => 'App\\Framework\\Validation\\ValidationResult', ), 2 => array ( 0 => 'App\\Framework\\Validation\\ValidationResult', 1 => 'getAllErrorMessages', 2 => 'App\\Framework\\Validation\\ValidationResult', ), 3 => array ( 0 => 'App\\Framework\\Validation\\ValidationResult', 1 => 'getAll', 2 => 'App\\Framework\\Validation\\ValidationResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Validation\\Validator', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheStrategy', 1 => 'getTtl', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheStrategy', ), 1 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheStrategy', 1 => 'shouldCache', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheStrategy', ), 2 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheStrategy', 1 => 'getDescription', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', 1 => 'hasUserContent', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', 1 => 'hasCsrfTokens', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', 1 => 'hasTimestamps', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', 1 => 'hasRandomElements', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', ), 4 => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', 1 => 'calculateStaticRatio', 2 => 'App\\Framework\\View\\Caching\\Analysis\\CacheabilityAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\SmartTemplateAnalyzer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\Analysis\\TemplateAnalysis', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\CacheDiagnostics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Keys/SmartKeyGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Keys\\SmartKeyGenerator', 1 => 'generate', 2 => 'App\\Framework\\View\\Caching\\Keys\\SmartKeyGenerator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\ComponentCacheStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\ComponentCacheStrategy', 1 => 'getTtl', 2 => 'App\\Framework\\View\\Caching\\Strategies\\ComponentCacheStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\FragmentCacheStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\FragmentCacheStrategy', 1 => 'getTtl', 2 => 'App\\Framework\\View\\Caching\\Strategies\\FragmentCacheStrategy', ), 1 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\FragmentCacheStrategy', 1 => 'canInvalidate', 2 => 'App\\Framework\\View\\Caching\\Strategies\\FragmentCacheStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy', 1 => 'canInvalidate', 2 => 'App\\Framework\\View\\Caching\\Strategies\\FullPageCacheStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/NoCacheStrategy.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\NoCacheStrategy', 1 => 'shouldCache', 2 => 'App\\Framework\\View\\Caching\\Strategies\\NoCacheStrategy', ), 1 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\NoCacheStrategy', 1 => 'getTtl', 2 => 'App\\Framework\\View\\Caching\\Strategies\\NoCacheStrategy', ), 2 => array ( 0 => 'App\\Framework\\View\\Caching\\Strategies\\NoCacheStrategy', 1 => 'canInvalidate', 2 => 'App\\Framework\\View\\Caching\\Strategies\\NoCacheStrategy', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\TaggedFragmentCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Caching\\TaggedFragmentCache', 1 => 'getKeysByTag', 2 => 'App\\Framework\\View\\Caching\\TaggedFragmentCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Caching\\TemplateContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\ComponentCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\ComponentCache', 1 => 'getCacheFile', 2 => 'App\\Framework\\View\\ComponentCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\ComponentRenderer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 1 => 'forEach', 2 => 20, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomFormService.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 1 => 'forEach', 2 => 15, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\DomWrapper', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'libxml_use_internal_errors', 1 => 27, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', 1 => 'first', 2 => 'App\\Framework\\View\\ElementCollection', ), 1 => array ( 0 => 'App\\Framework\\View\\ElementCollection', 1 => 'at', 2 => 'App\\Framework\\View\\ElementCollection', ), 2 => array ( 0 => 'App\\Framework\\View\\ElementCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\View\\ElementCollection', ), 3 => array ( 0 => 'App\\Framework\\View\\ElementCollection', 1 => 'toArray', 2 => 'App\\Framework\\View\\ElementCollection', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 1 => 'forEach', 2 => 203, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 1 => 'forEach', 2 => 211, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\EnhancedTemplateProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\EnhancedTemplateProcessor', 1 => '__debugInfo', 2 => 'App\\Framework\\View\\EnhancedTemplateProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Functions\\ImageSlotFunction', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Functions\\UrlFunction', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ComponentResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\Resolvers\\ComponentResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DefaultPathResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\Resolvers\\DefaultPathResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\Resolvers\\DiscoveryResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/LayoutResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\Resolvers\\LayoutResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateMapResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\Resolvers\\TemplateMapResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateCache.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\TemplateCache', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Loading\\TemplateCache', 1 => 'get', 2 => 'App\\Framework\\View\\Loading\\TemplateCache', ), 1 => array ( 0 => 'App\\Framework\\View\\Loading\\TemplateCache', 1 => 'isEnabled', 2 => 'App\\Framework\\View\\Loading\\TemplateCache', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Loading\\TemplatePathResolver', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processing\\DomProcessingPipeline', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processing\\StringProcessingPipeline', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\ComponentProcessor', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 1 => 'forEach', 2 => 29, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\CsrfReplaceProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Processors\\CsrfReplaceProcessor', 1 => 'process', 2 => 'App\\Framework\\View\\Processors\\CsrfReplaceProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\CsrfTokenProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Processors\\CsrfTokenProcessor', 1 => 'process', 2 => 'App\\Framework\\View\\Processors\\CsrfTokenProcessor', ), 1 => array ( 0 => 'App\\Framework\\View\\Processors\\CsrfTokenProcessor', 1 => 'generateCsrfField', 2 => 'App\\Framework\\View\\Processors\\CsrfTokenProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\FormProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\View\\ElementCollection', ), 1 => 'forEach', 2 => 15, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\IncludeProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\LayoutTagProcessor', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\Processors\\PhpVariableProcessor', 1 => 'replaceTernaryOperators', 2 => 'App\\Framework\\View\\Processors\\PhpVariableProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Processors\\PlaceholderReplacer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/RawHtml.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\RawHtml', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\RawHtml', 1 => '__toString', 2 => 'App\\Framework\\View\\RawHtml', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\RenderContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Template.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\Template', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\TemplateFunctions', 1 => 'has', 2 => 'App\\Framework\\View\\TemplateFunctions', ), 1 => array ( 0 => 'App\\Framework\\View\\TemplateFunctions', 1 => 'get', 2 => 'App\\Framework\\View\\TemplateFunctions', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\TemplateMapper', 1 => 'getAttributeClass', 2 => 'App\\Framework\\View\\TemplateMapper', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\TemplateProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\View\\TemplateProcessor', 1 => '__debugInfo', 2 => 'App\\Framework\\View\\TemplateProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\View\\TemplateRendererInitializer', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisResult', 1 => 'isThreat', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'getPriority', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'requiresBody', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'isExpensive', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'getProcessingTimeCategory', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'canRunInParallel', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'getMaxProcessingTime', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', 1 => 'shouldCache', 2 => 'App\\Framework\\Waf\\Analysis\\AnalysisType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', 1 => 'getSeverityForCategory', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', 1 => 'canAnalyze', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', 1 => 'getSeverityForInjectionType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\CookieAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', 1 => 'getUploadErrorMessage', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', 1 => 'getSeverityForContentType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\FileAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', 1 => 'canAnalyze', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', 1 => 'getConfiguration', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', 1 => 'getSeverityForInjectionType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\JsonAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', 1 => 'canAnalyze', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', 1 => 'getSeverityForInjectionType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', 1 => 'canAnalyze', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', 1 => 'getSeverityForCategory', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', 1 => 'getType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', 1 => 'getSeverityForEntityType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', 1 => 'getSeverityForInjectionType', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Analysis\\Analyzers\\XmlAnalyzer', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'libxml_disable_entity_loader', 1 => 269, ), 1 => array ( 0 => 'libxml_use_internal_errors', 1 => 270, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', 1 => 'hasFiles', 2 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', 1 => 'getParameter', 2 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', 1 => 'hasParameter', 2 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', 1 => 'getCookie', 2 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', 1 => 'hasCookie', 2 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', 1 => 'getFile', 2 => 'App\\Framework\\Waf\\Analysis\\ValueObjects\\RequestAnalysisData', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', 1 => 'getAll', 2 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', 1 => 'getDefaultSeverity', 2 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', ), 3 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', 1 => 'shouldBlock', 2 => 'App\\Framework\\Waf\\BotProtection\\BotDetectionType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\BotProtectionEngine', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\BotProtectionEngine', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\BotProtection\\BotProtectionEngine', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', 1 => 'getSupportedProviders', 2 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', 1 => 'normalizeProviderResponse', 2 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', 1 => 'isRequired', 2 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', ), 3 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', 1 => 'isMandatory', 2 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', ), 4 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', 1 => 'isConfigured', 2 => 'App\\Framework\\Waf\\BotProtection\\CaptchaValidator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\BehavioralDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 595, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector', 1 => 'matchesPattern', 2 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector', 1 => 'getSuspiciousDevices', 2 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\DeviceIntelligenceDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 429, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector', 1 => 'isKnownBot', 2 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\BotProtection\\Detectors\\FingerprintDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 189, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', 1 => 'getRiskScore', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', 1 => 'getDetections', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', 1 => 'isHighlySuspicious', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BehavioralAnalysisResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult', 1 => 'requiresVerification', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult', 1 => 'hasError', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotDetectionResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BotRiskScore', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', 1 => 'isAnomalous', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', 1 => 'isHighlySuspicious', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', 1 => 'getAnomalyScore', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', ), 3 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', 1 => 'getAnomalousFeatures', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', ), 4 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', 1 => 'matches', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\BrowserFingerprint', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'ksort', 1 => 230, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaChallenge', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'isHuman', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'isBot', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'isInconclusive', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 3 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'getConfidenceLevel', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 4 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'hasErrors', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 5 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'getErrorMessage', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), 6 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', 1 => 'getResponseTime', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\CaptchaResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'detectSuspiciousFeatures', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 1 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'isSuspicious', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 2 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'isHighlySuspicious', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 3 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'getSuspicionScore', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 4 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'getSuspiciousFeatures', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 5 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'isLikelyBot', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), 6 => array ( 0 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', 1 => 'matches', 2 => 'App\\Framework\\Waf\\BotProtection\\ValueObjects\\DeviceProfile', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionCategory.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\DetectionCategory', 1 => 'getOwaspRank', 2 => 'App\\Framework\\Waf\\DetectionCategory', ), 1 => array ( 0 => 'App\\Framework\\Waf\\DetectionCategory', 1 => 'getDefaultSeverity', 2 => 'App\\Framework\\Waf\\DetectionCategory', ), 2 => array ( 0 => 'App\\Framework\\Waf\\DetectionCategory', 1 => 'shouldAutoBlock', 2 => 'App\\Framework\\Waf\\DetectionCategory', ), 3 => array ( 0 => 'App\\Framework\\Waf\\DetectionCategory', 1 => 'getRelatedCategories', 2 => 'App\\Framework\\Waf\\DetectionCategory', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionSeverity.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'fromScore', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 1 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'fromCvss', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 2 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'getScore', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 3 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'getCvssScore', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 4 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'requiresImmediateAction', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 5 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'shouldBlock', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 6 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'shouldAlert', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 7 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), 8 => array ( 0 => 'App\\Framework\\Waf\\DetectionSeverity', 1 => 'getRecommendedAction', 2 => 'App\\Framework\\Waf\\DetectionSeverity', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator', 1 => 'calculateAccuracyTrend', 2 => 'App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator', 1 => 'calculateDetectionRateTrend', 2 => 'App\\Framework\\Waf\\Feedback\\Analytics\\FeedbackReportGenerator', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'uasort', 1 => 195, ), 1 => array ( 0 => 'uasort', 1 => 274, ), 2 => array ( 0 => 'arsort', 1 => 337, ), 3 => array ( 0 => 'arsort', 1 => 355, ), 4 => array ( 0 => 'arsort', 1 => 394, ), 5 => array ( 0 => 'arsort', 1 => 412, ), 6 => array ( 0 => 'arsort', 1 => 451, ), 7 => array ( 0 => 'arsort', 1 => 466, ), 8 => array ( 0 => 'sort', 1 => 490, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Feedback\\DatabaseFeedbackRepository', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', 1 => 'generateFeatureWeightAdjustments', 2 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', 1 => 'getMinimumFeedbackThreshold', 2 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', 1 => 'getLearningRate', 2 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\FeedbackLearningService', ), 1 => 'applyModelAdjustments', 2 => 100, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Feedback\\FeedbackService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', 1 => 'getWafEngine', 2 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', 1 => 'getFeedbackService', 2 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', 1 => 'getFalsePositiveThreshold', 2 => 'App\\Framework\\Waf\\Feedback\\WafFeedbackIntegrator', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\LayerResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'isThreat', 2 => 'App\\Framework\\Waf\\LayerResult', ), 1 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'isClean', 2 => 'App\\Framework\\Waf\\LayerResult', ), 2 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'hasError', 2 => 'App\\Framework\\Waf\\LayerResult', ), 3 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'getAction', 2 => 'App\\Framework\\Waf\\LayerResult', ), 4 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'getMessage', 2 => 'App\\Framework\\Waf\\LayerResult', ), 5 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'getLayerName', 2 => 'App\\Framework\\Waf\\LayerResult', ), 6 => array ( 0 => 'App\\Framework\\Waf\\LayerResult', 1 => 'getDetections', 2 => 'App\\Framework\\Waf\\LayerResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerStatus.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\LayerStatus', 1 => 'isSuccessful', 2 => 'App\\Framework\\Waf\\LayerStatus', ), 1 => array ( 0 => 'App\\Framework\\Waf\\LayerStatus', 1 => 'isError', 2 => 'App\\Framework\\Waf\\LayerStatus', ), 2 => array ( 0 => 'App\\Framework\\Waf\\LayerStatus', 1 => 'isThreat', 2 => 'App\\Framework\\Waf\\LayerStatus', ), 3 => array ( 0 => 'App\\Framework\\Waf\\LayerStatus', 1 => 'isClean', 2 => 'App\\Framework\\Waf\\LayerStatus', ), 4 => array ( 0 => 'App\\Framework\\Waf\\LayerStatus', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\LayerStatus', ), 5 => array ( 0 => 'App\\Framework\\Waf\\LayerStatus', 1 => 'getSeverityLevel', 2 => 'App\\Framework\\Waf\\LayerStatus', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'getName', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'isHealthy', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'getConfig', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'getVersion', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\Waf\\Layers\\CommandInjectionLayer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getName', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'isHealthy', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getPriority', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getConfig', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getVersion', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), 9 => array ( 0 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\Waf\\Layers\\IntelligentRateLimitLayer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'getName', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'isHealthy', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'getConfig', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'getVersion', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\Waf\\Layers\\PathTraversalLayer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getName', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'isHealthy', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getPriority', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getConfig', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getVersion', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), 9 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\Waf\\Layers\\SqlInjectionLayer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'getName', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'calculateSeverity', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'isHealthy', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'getConfig', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'getVersion', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), 9 => array ( 0 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\Waf\\Layers\\SuspiciousUserAgentLayer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'getName', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'isHealthy', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'getConfig', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'getMetrics', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'supportsParallelProcessing', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'getVersion', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Layers\\XssLayer', 1 => 'getSupportedCategories', 2 => 'App\\Framework\\Waf\\Layers\\XssLayer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', 1 => 'getConfidenceThreshold', 2 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', ), 2 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', 1 => 'getSeverityLevel', 2 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', ), 3 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', 1 => 'requiresImmediateAction', 2 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', ), 4 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', 1 => 'getRecommendedAction', 2 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', ), 5 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', 1 => 'getAnalysisComplexity', 2 => 'App\\Framework\\Waf\\MachineLearning\\AnomalyType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BaselineManager', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BaselineManager', 1 => 'generateBaselineKey', 2 => 'App\\Framework\\Waf\\MachineLearning\\BaselineManager', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BaselineManager', 1 => 'getPerformanceMetrics', 2 => 'App\\Framework\\Waf\\MachineLearning\\BaselineManager', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 243, ), 1 => array ( 0 => 'sort', 1 => 323, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', 1 => 'getWeight', 2 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', ), 2 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', 1 => 'getMinSampleSize', 2 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', ), 3 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', 1 => 'getAnalysisWindow', 2 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', ), 4 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', 1 => 'requiresRealTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\BehaviorType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'getName', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'getSupportedBehaviorTypes', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 2 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'groupFeaturesByType', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 3 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'getFeaturesForCluster', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 4 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'extractNumericVector', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 5 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 6 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'getConfidenceThreshold', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 7 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'getExpectedProcessingTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), 8 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 1 => 'supportsRealTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 615, ), 1 => array ( 0 => 'usort', 1 => 692, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'getName', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'getSupportedBehaviorTypes', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 2 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'getFeatureHistory', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 3 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 4 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'getConfidenceThreshold', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 5 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'getExpectedProcessingTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), 6 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 1 => 'supportsRealTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 179, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'getBehaviorType', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'canExtract', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 2 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'getFeatureNames', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 3 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 4 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'getPriority', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 5 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'getExpectedProcessingTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 6 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'supportsParallelExecution', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), 7 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 175, ), 1 => array ( 0 => 'sort', 1 => 205, ), 2 => array ( 0 => 'sort', 1 => 246, ), 3 => array ( 0 => 'sort', 1 => 393, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'getBehaviorType', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'canExtract', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 2 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'getFeatureNames', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 3 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 4 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'getPriority', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 5 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'getExpectedProcessingTime', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 6 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'supportsParallelExecution', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), 7 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 1 => 'getDependencies', 2 => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'json_decode', 1 => 782, ), 1 => array ( 0 => 'simplexml_load_string', 1 => 790, ), 2 => array ( 0 => 'libxml_use_internal_errors', 1 => 792, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine', 1 => 'isEnabled', 2 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 119, ), 1 => array ( 0 => 'sort', 1 => 292, ), 2 => array ( 0 => 'usort', 1 => 549, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningResult', 1 => 'hasAnomalies', 2 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningResult', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningResult', 1 => 'isSuccessful', 2 => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\AnomalyDetection', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline', 1 => 'calculateZScore', 2 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorBaseline', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 47, ), 1 => array ( 0 => 'sort', 1 => 110, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\BehaviorFeature', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sort', 1 => 250, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\ModelAdjustment', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\ModelAdjustment', 1 => 'hasFeatureWeightAdjustments', 2 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\ModelAdjustment', ), 1 => array ( 0 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\ModelAdjustment', 1 => 'getFeatureAdjustment', 2 => 'App\\Framework\\Waf\\MachineLearning\\ValueObjects\\ModelAdjustment', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\PerformanceService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\PerformanceService', 1 => 'getTiming', 2 => 'App\\Framework\\Waf\\PerformanceService', ), 1 => array ( 0 => 'App\\Framework\\Waf\\PerformanceService', 1 => 'getAllTimings', 2 => 'App\\Framework\\Waf\\PerformanceService', ), 2 => array ( 0 => 'App\\Framework\\Waf\\PerformanceService', 1 => 'getMetric', 2 => 'App\\Framework\\Waf\\PerformanceService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Rules\\Rule', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'getDefaultHttpStatus', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'blocksRequest', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'requiresLogging', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'getLogLevel', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'affectsAnomalyScore', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'getAnomalyScoreImpact', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 7 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'canBeChained', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 8 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'requiresParameters', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), 9 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleAction', 1 => 'getRequiredParameters', 2 => 'App\\Framework\\Waf\\Rules\\RuleAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleEngine', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleEngine', 1 => 'getRule', 2 => 'App\\Framework\\Waf\\Rules\\RuleEngine', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleEngine', 1 => 'getRulesByCategory', 2 => 'App\\Framework\\Waf\\Rules\\RuleEngine', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'usort', 1 => 53, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleEvaluationResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleEvaluationResult', 1 => 'hasMatches', 2 => 'App\\Framework\\Waf\\Rules\\RuleEvaluationResult', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleEvaluationResult', 1 => 'hasErrors', 2 => 'App\\Framework\\Waf\\Rules\\RuleEvaluationResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleType.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), 1 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'getDefaultPriority', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), 2 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'requiresBody', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), 3 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'isExpensive', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), 4 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'canCauseFalsePositives', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), 5 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'getProcessingTimeCategory', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), 6 => array ( 0 => 'App\\Framework\\Waf\\Rules\\RuleType', 1 => 'supportsCaching', 2 => 'App\\Framework\\Waf\\Rules\\RuleType', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Rules\\ValueObjects\\RuleCondition', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch', 1 => 'isHighSeverityThreat', 2 => 'App\\Framework\\Waf\\Rules\\ValueObjects\\RuleMatch', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\Rules\\ValueObjects\\RulePattern', 1 => '__toString', 2 => 'App\\Framework\\Waf\\Rules\\ValueObjects\\RulePattern', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'preg_match_all', 1 => 143, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ThreatAssessment', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ThreatAssessment', 1 => 'countBySeverity', 2 => 'App\\Framework\\Waf\\ThreatAssessment', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ThreatAssessmentService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ThreatAssessmentService', 1 => 'getSeverityWeight', 2 => 'App\\Framework\\Waf\\ThreatAssessmentService', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ThreatAssessmentService', 1 => 'mapAnomalyScoreToSeverity', 2 => 'App\\Framework\\Waf\\ThreatAssessmentService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'hasRequest', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'hasSession', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 2 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'hasGeographic', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 3 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'hasTechnical', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 4 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'hasBusiness', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 5 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'hasCustomData', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), 6 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', 1 => 'getCustomValue', 2 => 'App\\Framework\\Waf\\ValueObjects\\AdditionalContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\BusinessContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\Detection', 1 => 'isCritical', 2 => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\Detection', 1 => 'getFormattedMessage', 2 => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', 1 => 'isEmpty', 2 => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\GeographicContext', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\GeographicContext', 1 => 'hasCoordinates', 2 => 'App\\Framework\\Waf\\ValueObjects\\GeographicContext', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\GeographicContext', 1 => 'hasTimezone', 2 => 'App\\Framework\\Waf\\ValueObjects\\GeographicContext', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', 1 => 'getCustomSetting', 2 => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\LayerMetrics', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', 1 => 'wasTruncated', 2 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', 1 => 'getOriginalSize', 2 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', ), 2 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', 1 => 'getContentType', 2 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', ), 3 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', 1 => 'getEncoding', 2 => 'App\\Framework\\Waf\\ValueObjects\\PayloadSample', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\RequestContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', 1 => 'hasConfidence', 2 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', 1 => 'hasRule', 2 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', ), 2 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', 1 => 'hasAttackVector', 2 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', ), 3 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', 1 => 'hasRequestContext', 2 => 'App\\Framework\\Waf\\ValueObjects\\ResultMetadata', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RuleId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\RuleId', 1 => 'equals', 2 => 'App\\Framework\\Waf\\ValueObjects\\RuleId', ), 1 => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\RuleId', 1 => '__toString', 2 => 'App\\Framework\\Waf\\ValueObjects\\RuleId', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\SessionContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/TechnicalContext.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\ValueObjects\\TechnicalContext', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafAction.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\WafAction', 1 => 'getDescription', 2 => 'App\\Framework\\Waf\\WafAction', ), 1 => array ( 0 => 'App\\Framework\\Waf\\WafAction', 1 => 'getDefaultHttpStatus', 2 => 'App\\Framework\\Waf\\WafAction', ), 2 => array ( 0 => 'App\\Framework\\Waf\\WafAction', 1 => 'allowsContinuation', 2 => 'App\\Framework\\Waf\\WafAction', ), 3 => array ( 0 => 'App\\Framework\\Waf\\WafAction', 1 => 'requiresLogging', 2 => 'App\\Framework\\Waf\\WafAction', ), 4 => array ( 0 => 'App\\Framework\\Waf\\WafAction', 1 => 'getLogLevel', 2 => 'App\\Framework\\Waf\\WafAction', ), 5 => array ( 0 => 'App\\Framework\\Waf\\WafAction', 1 => 'shouldAlert', 2 => 'App\\Framework\\Waf\\WafAction', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\WafDecision', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'getHttpStatusCode', 2 => 'App\\Framework\\Waf\\WafDecision', ), 1 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'getResponseMessage', 2 => 'App\\Framework\\Waf\\WafDecision', ), 2 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'isAllowed', 2 => 'App\\Framework\\Waf\\WafDecision', ), 3 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'isBlocked', 2 => 'App\\Framework\\Waf\\WafDecision', ), 4 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'isMonitored', 2 => 'App\\Framework\\Waf\\WafDecision', ), 5 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'isChallenged', 2 => 'App\\Framework\\Waf\\WafDecision', ), 6 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'shouldContinue', 2 => 'App\\Framework\\Waf\\WafDecision', ), 7 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'shouldModifyResponse', 2 => 'App\\Framework\\Waf\\WafDecision', ), 8 => array ( 0 => 'App\\Framework\\Waf\\WafDecision', 1 => 'getPriority', 2 => 'App\\Framework\\Waf\\WafDecision', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Waf\\WafEngine', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\WafEngine', 1 => 'getLayerResults', 2 => 'App\\Framework\\Waf\\WafEngine', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Waf\\WafEngineInitializer', 1 => 'getRegisteredLayerNames', 2 => 'App\\Framework\\Waf\\WafEngineInitializer', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Attributes/WebhookAuth.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Attributes\\WebhookAuth', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Attributes/WebhookEndpoint.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Attributes\\WebhookEndpoint', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Attributes/WebhookSignature.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Attributes\\WebhookSignature', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookFailed', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookFailed', 1 => 'getEventName', 2 => 'App\\Framework\\Webhook\\Events\\WebhookFailed', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookFailed', 1 => 'isRetryable', 2 => 'App\\Framework\\Webhook\\Events\\WebhookFailed', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 1 => 'getEventName', 2 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 1 => 'getAggregateId', 2 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', ), 2 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 1 => 'getData', 2 => 'App\\Framework\\Webhook\\Events\\WebhookReceived', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookSent', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookSent', 1 => 'getEventName', 2 => 'App\\Framework\\Webhook\\Events\\WebhookSent', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Events\\WebhookSent', 1 => 'wasSuccessful', 2 => 'App\\Framework\\Webhook\\Events\\WebhookSent', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Jobs\\WebhookJob', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Jobs\\WebhookJob', 1 => 'getPriority', 2 => 'App\\Framework\\Webhook\\Jobs\\WebhookJob', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Middleware\\WebhookMiddleware', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Processing\\IdempotencyService', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Processing\\IdempotencyService', 1 => 'getProviderStatus', 2 => 'App\\Framework\\Webhook\\Processing\\IdempotencyService', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', 1 => 'canProcess', 2 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', 1 => 'getName', 2 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', ), 2 => array ( 0 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', 1 => 'getPriority', 2 => 'App\\Framework\\Webhook\\Processing\\WebhookJobProcessor', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Processing\\WebhookRequestHandler', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 138, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\GenericHmacProvider', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\GenericHmacProvider', 1 => 'getSignatureHeader', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\GenericHmacProvider', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\GenericHmacProvider', 1 => 'getProviderName', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\GenericHmacProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\GitHubSignatureProvider', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\GitHubSignatureProvider', 1 => 'getSignatureHeader', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\GitHubSignatureProvider', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\GitHubSignatureProvider', 1 => 'getProviderName', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\GitHubSignatureProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\LegalServiceProvider', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\LegalServiceProvider', 1 => 'getSignatureHeader', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\LegalServiceProvider', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\LegalServiceProvider', 1 => 'getProviderName', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\LegalServiceProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\StripeSignatureProvider', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\StripeSignatureProvider', 1 => 'getSignatureHeader', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\StripeSignatureProvider', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Security\\Providers\\StripeSignatureProvider', 1 => 'getProviderName', 2 => 'App\\Framework\\Webhook\\Security\\Providers\\StripeSignatureProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookScheduler', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', 1 => 'isSuccessful', 2 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', 1 => 'isFailed', 2 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', ), 2 => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', 1 => 'isClientError', 2 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', ), 3 => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', 1 => 'isServerError', 2 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', ), 4 => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', 1 => 'isRateLimited', 2 => 'App\\Framework\\Webhook\\Sending\\WebhookSendResult', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSender', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\Sending\\WebhookSender', 1 => 'shouldNotRetry', 2 => 'App\\Framework\\Webhook\\Sending\\WebhookSender', ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'sleep', 1 => 207, ), ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 113, ), 1 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 125, ), 2 => array ( 0 => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcher', ), 1 => 'dispatch', 2 => 154, ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', 1 => 'get', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', 1 => 'jsonSerialize', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', ), 2 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', 1 => 'toArray', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', ), 3 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', 1 => 'isEmpty', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookPayload', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookProvider.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookProvider', 1 => 'toString', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookProvider', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookProvider', 1 => 'equals', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookProvider', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookSignature.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookSignature', 1 => 'toString', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookSignature', ), 1 => array ( 0 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookSignature', 1 => 'toHeaderFormat', 2 => 'App\\Framework\\Webhook\\ValueObjects\\WebhookSignature', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Webhook\\WebhookService', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Worker/Every.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Worker\\Every', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Worker\\Every', 1 => 'toSeconds', 2 => 'App\\Framework\\Worker\\Every', ), ), ), '/home/michael/dev/michaelschiemer/src/Framework/Worker/Schedule.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Framework\\Worker\\Schedule', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\AI\\AiHandlerFactory', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\AI\\AiService', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\AI\\GPT4All\\Gpt4AllQueryHandler', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\AI\\Ollama\\OllamaQueryHandler', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\AI\\OpenAI\\OpenAiQueryHandler', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php' => array ( 'PHPStan\\Rules\\Traits\\TraitUseCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Api\\ApiRequestTrait', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\BlacklistService', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient', ), 1 => 'sendRawRequest', 2 => 40, ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\Examples\\UsageExamples', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientService', ), 1 => 'updateWithCommand', 2 => 228, ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\Mailing', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\MailingId', 1 => 'equals', 2 => 'App\\Infrastructure\\Api\\RapidMail\\MailingId', ), 1 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\MailingId', 1 => '__toString', 2 => 'App\\Infrastructure\\Api\\RapidMail\\MailingId', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\MailingService', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient', 1 => 'getDefaultQueryParams', 2 => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailConfig.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailConfig', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient', 1 => 'isActive', 2 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient', ), 1 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient', 1 => 'hasRecipientList', 2 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\Recipient', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', 1 => 'isDefault', 2 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', ), 1 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', 1 => 'hasUnsubscribeBlacklist', 2 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', ), 2 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', 1 => 'hasRecipientSubscribeEmail', 2 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', ), 3 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', 1 => 'isEmpty', 2 => 'App\\Infrastructure\\Api\\RapidMail\\ReadModels\\RecipientList', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientId', 1 => 'equals', 2 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientId', ), 1 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientId', 1 => '__toString', 2 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientId', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListId.php' => array ( 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientListId', 1 => 'equals', 2 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientListId', ), 1 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientListId', 1 => '__toString', 2 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientListId', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientListService', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient', ), 1 => 'sendRawRequest', 2 => 81, ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RecipientService', ), 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailApiClient', ), 1 => 'sendRawRequest', 2 => 69, ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\Api\\RapidMail\\StatisticsService', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Infrastructure\\Api\\RapidMailClient', ), 1 => 'sendRequest', 2 => 59, ), ), 'PHPStan\\Rules\\Traits\\TraitUseCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Api\\ApiRequestTrait', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php' => array ( 'PHPStan\\Rules\\Traits\\TraitUseCollector' => array ( 0 => array ( 0 => 'App\\Framework\\Api\\ApiRequestTrait', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/Country.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\GeoIp\\Country', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\GeoIp\\Country', 1 => 'toArray', 2 => 'App\\Infrastructure\\GeoIp\\Country', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryDataService', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryInfo', ), 'PHPStan\\Rules\\DeadCode\\MethodWithoutImpurePointsCollector' => array ( 0 => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryInfo', 1 => 'hasCountry', 2 => 'App\\Infrastructure\\GeoIp\\CountryInfo', ), 1 => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryInfo', 1 => 'getGermanName', 2 => 'App\\Infrastructure\\GeoIp\\CountryInfo', ), 2 => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryInfo', 1 => 'getEnglishName', 2 => 'App\\Infrastructure\\GeoIp\\CountryInfo', ), 3 => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryInfo', 1 => 'getNativeName', 2 => 'App\\Infrastructure\\GeoIp\\CountryInfo', ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryDataService', ), 1 => 'loadCountryData', 2 => 25, ), 1 => array ( 0 => array ( 0 => 'App\\Infrastructure\\GeoIp\\IpRangeService', ), 1 => 'loadIpRanges', 2 => 30, ), 2 => array ( 0 => array ( 0 => 'App\\Infrastructure\\GeoIp\\CountryDataService', ), 1 => 'loadCountryData', 2 => 39, ), 3 => array ( 0 => array ( 0 => 'App\\Infrastructure\\GeoIp\\IpRangeService', ), 1 => 'loadIpRanges', 2 => 47, ), 4 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'setAttribute', 2 => 59, ), 5 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'exec', 2 => 62, ), 6 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'exec', 2 => 68, ), 7 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'exec', 2 => 71, ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureMethodCallCollector' => array ( 0 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'setAttribute', 2 => 94, ), 1 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'exec', 2 => 97, ), 2 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'exec', 2 => 103, ), 3 => array ( 0 => array ( 0 => 'PDO', ), 1 => 'exec', 2 => 106, ), ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/IpRangeService.php' => array ( 'PHPStan\\Rules\\DeadCode\\ConstructorWithoutImpurePointsCollector' => array ( 0 => 'App\\Infrastructure\\GeoIp\\IpRangeService', ), ), '/home/michael/dev/michaelschiemer/src/preload.php' => array ( 'PHPStan\\Rules\\DeadCode\\PossiblyPureFuncCallCollector' => array ( 0 => array ( 0 => 'class_exists', 1 => 74, ), 1 => array ( 0 => 'opcache_compile_file', 1 => 92, ), ), ), ); }, 'dependencies' => array ( '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php' => array ( 'fileHash' => '956cc61b1386c5f007119b74fa47914e9e80f5f9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php' => array ( 'fileHash' => 'd7895ec04675554481a5e394501c8f0d4712dd38', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php' => array ( 'fileHash' => 'd2734cb46718cdba085d2fcec6583db5fea46c83', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/Images.php' => array ( 'fileHash' => 'a77d61ac14902f8a2b552e5f25dcd401ea7c30c1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php' => array ( 'fileHash' => '1f6cd68a3b38d2583da59866853f00731a89b733', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/RoutesViewModel.php' => array ( 'fileHash' => '0e978493fd87aac18d27d9083e2d43d8baabe32b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php' => array ( 'fileHash' => '3986a0afcb4c7435e86f29ac4e324c53d197b90b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php' => array ( 'fileHash' => 'edbfd183c339c89afb4ea03d436753a18a2778db', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php' => array ( 'fileHash' => '398ba0853c1d783c7d061db93a6575677aa07857', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php' => array ( 'fileHash' => '19ed4d299896bc99f841a6e32ecc901cf0e0dbc3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php' => array ( 'fileHash' => '3b74e711307c4bc2b23ecca8d4d02685d76f3a0e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php' => array ( 'fileHash' => 'df4a267e261882f51b3f2151587cbe3944843770', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/admin-main.view.php' => array ( 'fileHash' => 'ccb7d53432d75e6f787fbcdcedd6cb8a20cddcea', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/dashboard.view.php' => array ( 'fileHash' => '993016c2c50b21f9e192d42060480e3c5db6d9a3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/health-dashboard-refactored.view.php' => array ( 'fileHash' => 'a431024e945a200e9158d8b2a96e7e8331202c49', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/health-dashboard.view.php' => array ( 'fileHash' => '524d73d00a057f017b82c444974b4dfb2c73af50', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/imageslot.view.php' => array ( 'fileHash' => '2fb759ffc02a029e22d286de82c5780d2a2000e3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/imageslots.view.php' => array ( 'fileHash' => 'c294971061bf63d53ec948fe308f6dc9d97d3163', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/log-viewer.view.php' => array ( 'fileHash' => '50a1fe785fea2fa7360f7541b4a052f79418bdc3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/templates/routes.view.php' => array ( 'fileHash' => '75f5ad14080dd7a0f7bea0a9183cc97408d393f4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php' => array ( 'fileHash' => '345d6dc9f951eb638a5ccc8b8219698712d6e06f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Contracts/LegacyArrayConvertible.php' => array ( 'fileHash' => '172b268dd4e5748b7b3691cbf238347b229724bf', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php' => array ( 'fileHash' => '2ecc971dfe68726a3bd61054aaa0410890dfeb46', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php' => array ( 'fileHash' => 'ffa3d0d3f3e199882eff5677253a0a331d6468db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php' => array ( 'fileHash' => '560db94dc4223056adacf1e44bddf1650f3406ec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/ActionBreakdown.php' => array ( 'fileHash' => 'addfe6a98b058b9f82c7de11bc2f6a79a4c2c2b7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BrowserBreakdown.php' => array ( 'fileHash' => 'a9598623d21fecb8a71d1b4353c2c7bd747b8cd1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BusinessMetricsReport.php' => array ( 'fileHash' => '0eefbd5647a9ad965c6fbf728975e8437c2bfda5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/CountryBreakdown.php' => array ( 'fileHash' => 'd72403ccf8d54c7f90716fe2b4be81ff813c7ebe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/DeviceBreakdown.php' => array ( 'fileHash' => 'd6e2261f4c1195b146549e336fb597e043a7e7ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php' => array ( 'fileHash' => '6925622d512f3e31b59a9a4b98ceed2b6227ffac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/templates/analytics-dashboard.view.php' => array ( 'fileHash' => '9fcdd80d3434b1ac13ee6a56bc976f4f1a6853ca', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php' => array ( 'fileHash' => '652fe05a9e635cacd66674b9c3b867590ba30ec6', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php' => array ( 'fileHash' => '37f5bae57e92666474ce649b4191001ba98d896f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php' => array ( 'fileHash' => 'eaf522f67d49d74cad07966c0c992593dd905a84', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php' => array ( 'fileHash' => 'be4226b7de98df3e39949826575a7a747e63985d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php' => array ( 'fileHash' => 'dd551858ca6b6ed572dcaa69045ccede751bf022', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php' => array ( 'fileHash' => '122047f013d50e806afff62d17c6e8043660d19c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php' => array ( 'fileHash' => 'e8e6b67bb11914f413cec3677f930e50d8935314', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php' => array ( 'fileHash' => '53b205508495488d6721ae7a2cf420673f183d6f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php' => array ( 'fileHash' => '361178c6d4e75cbaac049ff63ccfa03d676fc559', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php' => array ( 'fileHash' => '45a375810aa822653a91b5723357d6451608e156', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginUser.php' => array ( 'fileHash' => '67517ff6d48153fd9583e5a2341133b89aa5170e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginUserHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginUserHandler.php' => array ( 'fileHash' => '8fda5b4e9da7422100c709aa2a1ba3632681bccc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php' => array ( 'fileHash' => '527a116935345e70e32a7f24d3ece01f9d9e7eeb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/templates/loginform.view.php' => array ( 'fileHash' => '538ab322050e0fab6e245d0f7e67deafe000b2da', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php' => array ( 'fileHash' => 'c96bcb8ed7c0040888668e9fb4f68ad639130585', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/ContactRequest.php' => array ( 'fileHash' => 'e46fd4aaaeb1d65e8fc42ae45d5b2120931343e8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php' => array ( 'fileHash' => '4fdc3b437faa814672b75a3d0ad528b4bbf512be', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContact.php' => array ( 'fileHash' => '175503deb0c1bc70c3494bc323daee6e1a3b563d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php' => array ( 'fileHash' => '28fede67e0e7e810ebbea98fe950a6e2d53abd5f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/contact-success.view.php' => array ( 'fileHash' => 'e9423a4345ef3699fef38d1dfee0795c02019844', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/contact.view.php' => array ( 'fileHash' => '805704dab3d0c3f396f54e33ac50a062c2877411', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php' => array ( 'fileHash' => '10e84eed45a67e9c087fa288a1664396aaa21445', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php' => array ( 'fileHash' => '02de6ab2236fbcc7aae35b49a10e9c65fa62c17d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php' => array ( 'fileHash' => '96b766a5d7d9c3ef392e858e5a070555e4287f5c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/api-manager.view.php' => array ( 'fileHash' => 'f2a6432201f9c7796cd3ef29adfd16b46d54241f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/canvas.view.php' => array ( 'fileHash' => 'e4cf6a9be99e4820d20762b3232ad6304dcc88e2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/permissions.view.php' => array ( 'fileHash' => 'ebcd5d01ac1d67518f6ef07dce3f137a2b77a252', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php' => array ( 'fileHash' => '3c1c7313a035f5ed52b1b06a6cd02a8c0aed1bd4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/colors.view.php' => array ( 'fileHash' => 'a9376644ed4c33171ed4317d183d0e1ae05c16d4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-detail.view.php' => array ( 'fileHash' => '6f1190463c9a3587414ed46de0e519d7096ea3ba', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/component-not-found.view.php' => array ( 'fileHash' => '45159122a9f7cd8c419d90a41edd6cf9c917cdf4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/components-overview.view.php' => array ( 'fileHash' => 'f8d9c8df8dc389f37186c80bd3e292bfc263302e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/components.view.php' => array ( 'fileHash' => 'e883847c9e8cd0bfdbd7e127986dbde793ff8027', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/conventions.view.php' => array ( 'fileHash' => '705d33ff632515f4a7eed2a948a7ab6e749216e3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/design-dashboard.view.php' => array ( 'fileHash' => '4250580b3dc803b482edded7c91e903a9e8a7db7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/roadmap.view.php' => array ( 'fileHash' => 'd5ba7ee57385eaaaba8507a86994cb0d48de0918', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Views/tokens.view.php' => array ( 'fileHash' => '098f58a44e8fd10b2a0388ef9f9e6d541ecc45d2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php' => array ( 'fileHash' => 'ee0785e8d6d031b7a145194ad6d2d84d7f95a0ad', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php' => array ( 'fileHash' => '5061e13c1660ecce23178a63d6c8f6820d651b50', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php' => array ( 'fileHash' => '274606ad04277e3d33f73d4be6dc5709bf0f7fc6', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php' => array ( 'fileHash' => 'a5583b30fda01ab65246ecf60023a79d0b42a0a9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php' => array ( 'fileHash' => '32513396613b30d9c3d4b6e8d0ffbf34635d9c3c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php' => array ( 'fileHash' => '6294e6f5a9a93cbcea8afc9a3215f670e7ffed91', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php' => array ( 'fileHash' => 'db5f3f26f4a11048b39616acc49026301cd8061d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php' => array ( 'fileHash' => '7ddc93f763d76a0e991eb2412f6c92fdec06ad45', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php' => array ( 'fileHash' => '33085d40c0894474ae8656bb3029de364c5f238b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php' => array ( 'fileHash' => '8067622921a99c9593f181b80b71cd718ca7845c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php' => array ( 'fileHash' => '421973abb9e8104b884e2d2a5cfb5ce08d2c228a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php' => array ( 'fileHash' => '2e9e10b6e98358d24ff874dc090a7d2f078f8698', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php' => array ( 'fileHash' => '22a2247873b3457565c0bbc722332b557e915886', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php' => array ( 'fileHash' => '7c9491be39f48bdec77db967307bcd11bf17169d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Http/templates/smartlinks-error.view.php' => array ( 'fileHash' => '3b0c3d2f82312f2891307c023c2bdd007e41d975', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php' => array ( 'fileHash' => '578ac02fda92e43860edd1c12803113dca28dbf8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php' => array ( 'fileHash' => 'd351165b30c689a182a42240d39b6cd229d9789b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php' => array ( 'fileHash' => '55e7364b9203fe93837c0f4b7c0120ba7e3cf876', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php' => array ( 'fileHash' => 'ec87ce3526d58fc6171c6a3d4bc4cf534b47ca67', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php' => array ( 'fileHash' => '4f95875c799bae5cfce2887ba709c5f1ee93c5c9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/EventHandlerExample.php' => array ( 'fileHash' => 'c9ec65c7d78a285b5a9c78f73a42790fc8e9309e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php' => array ( 'fileHash' => '80293caa175d0718086aa8238ec6c68b842f31a9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php' => array ( 'fileHash' => '4dd6e89e38bc4188abed0005907e4d97f0b856be', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php' => array ( 'fileHash' => '9fae4a0c0370c7f10637d4c088732fad84b879d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/SignupUserToNewsletter.php' => array ( 'fileHash' => '61c8f5a2e2efd436a5bd810bba11c39e254da877', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/UserWasSignedUp.php' => array ( 'fileHash' => 'a1cbc63d5371eb5109e7f971fd3da9088b295340', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/EventHandlerExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php' => array ( 'fileHash' => 'ad3d1249cf9c7cc0e6c9e2953a2b0e2767009e1d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php' => array ( 'fileHash' => '70d9c4d148b6aba3b4bb945658765d5d926da31f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php' => array ( 'fileHash' => 'b1e18c6f1ede120325d376c5bd3231ec2f493824', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php' => array ( 'fileHash' => '2c6fcfbb05cd3a802d59ee30723d048f787748f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php' => array ( 'fileHash' => '8c0f924bc793a404d34165d998703c90191693c9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php' => array ( 'fileHash' => 'beffdf3d6375797eb68c303a49ffafd846d1f489', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php' => array ( 'fileHash' => '56f0ff0e2016eb015b68349e7071fc66d7df3c34', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEvent.php' => array ( 'fileHash' => '5e6a33ffab80e6aaf96c4ab316ded6a9920ec3ec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php' => array ( 'fileHash' => '451139fe5ad10b7b003bf65187a01b4fc209e2b8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php' => array ( 'fileHash' => 'da19ff825ed7f936d17faf20586a904c44dade2e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php' => array ( 'fileHash' => '3c476471888a99b322d60e1939fa0401dc13192e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEvent.php' => array ( 'fileHash' => 'fae7064a007d9bc9a8566e1c2a92746b52eaba09', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php' => array ( 'fileHash' => '946e4d551ce5ee9a40404f63c0fc1351d96006dc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventType.php' => array ( 'fileHash' => '896d4b33a1e65a3f9c947588306e4e02c78f4f37', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEvent.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php' => array ( 'fileHash' => 'e3e9b00f70307906d827ef2294422f10641a2ab9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php' => array ( 'fileHash' => 'ea60c49ca98c3835b4cd744da08950fffbda0a7b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskedEmail.php' => array ( 'fileHash' => '6a3c869705a143b84b54897e0d91797ba7421f62', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskingStrategy.php' => array ( 'fileHash' => 'b97ca5663b8ebe811ceb06df35671bd79f3649c5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskedEmail.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPEventIdentifier.php' => array ( 'fileHash' => '828fb64e0c0d476649754c782ed77aa0b7eb8e76', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php' => array ( 'fileHash' => '426ba1796985c1bb4127da53e4bf1b7683cdc93e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php' => array ( 'fileHash' => '9b3a994fbd2b2e82419c4fe3ad7ef41854c28a69', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/RequestContext.php' => array ( 'fileHash' => '5c882c6bb3c02d0d1048a759efa4db743f14b564', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php' => array ( 'fileHash' => 'f1f8cd9ae0189ac288170314b03f2967fe02b665', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php' => array ( 'fileHash' => '2c879521c6a4d6a9008ceafb2ac3ede765e693ba', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php' => array ( 'fileHash' => '67508b779b1c14f2d796648617bd9dfa0bb7f6ed', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php' => array ( 'fileHash' => 'd63e1c17d1078935daf20a503d10cc4a912df0ce', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php' => array ( 'fileHash' => 'e4080cf4b437fae169844a462dc699ea30338411', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php' => array ( 'fileHash' => 'bdad90403d9064031037fc9abe22e990c642007e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php' => array ( 'fileHash' => '5f62e266afdbb2ddf35e7b22871c8d95ac7972dc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerRequest.php' => array ( 'fileHash' => '6eec6ded20b98b0808bffabff5f75c570a2dc369', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php' => array ( 'fileHash' => '50386c9ff8ddcfde12587ea4af2a3f6d3a423374', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderRequest.php' => array ( 'fileHash' => '7371334a98a01c87557bb6d3404be35a83bf9287', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php' => array ( 'fileHash' => '3aba574b221272f33d229508ff63b7957449503c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php' => array ( 'fileHash' => '299a0fe137c23afc1ea009bb4116d5fd16378408', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php' => array ( 'fileHash' => '3924cd95a3173a78653a64dff621ad36d6cdb8bd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php' => array ( 'fileHash' => '48e364e8d2c0fbb41efd7f75d2c0b7574c2e0f8a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/WebhookRequest.php' => array ( 'fileHash' => '3afba805780bab04e8bf09b36b1142ec705c0776', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/System/BootLogger.php' => array ( 'fileHash' => '3ce4e56465943eb04efacd4543960e17d297e650', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/System/ErrorLogger.php' => array ( 'fileHash' => '8af2671edfef3921cbc309d47669b6a44eabfee7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/System/UserRegistrationLogger.php' => array ( 'fileHash' => 'c3306455f25366c49a57bc9f8ec6942bdb24f9d6', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php' => array ( 'fileHash' => '91826d6e6ac62ed896f5ead6453a66e15de84d99', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserData.php' => array ( 'fileHash' => 'aceb2871f06faffaa9496ce5847f6ac591ae853d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php' => array ( 'fileHash' => 'f0aae650e124f6ea3212c8beb89f9f5b9c419419', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php' => array ( 'fileHash' => '653e8a956482248537fb8b95b4ff129cedb63cae', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQuery.php' => array ( 'fileHash' => 'eb41dd4484d12d8c5f85a561116ee3a12ca15f95', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryHandler.php' => array ( 'fileHash' => '84eb9d4fc0d4b22bbde09df0a84ac080036b3649', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryReturn.php' => array ( 'fileHash' => '56ee06646cdd06b6dc7da994bb1eca3eb40b3a81', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/HomeRequest.php' => array ( 'fileHash' => '05f51c9b762cdef1855f4e9b9eef6314f0dc9f26', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/HomeViewModel.php' => array ( 'fileHash' => 'bef5b11c1754c7486f6c0df39124495df4a1430e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php' => array ( 'fileHash' => '303d2019e9e634db4862c9a57762f20a87224a76', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php' => array ( 'fileHash' => '3c44c9c6d591263ec157ba271e3f862741aa726c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php' => array ( 'fileHash' => 'c3495643e5884dd9f1e90199ad19002877263e4f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php' => array ( 'fileHash' => '5aec989e40e97ec91b560e38fad653548d71b84d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Application/Website/templates/sitemap.view.php' => array ( 'fileHash' => '36b06e2998abbeda00f2f405373930936c46f061', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiModel.php' => array ( 'fileHash' => 'd7b134a381007bb49f85b8aa431a9fa7b4093ebc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiProvider.php' => array ( 'fileHash' => 'da0c1ddd4043dab929a8f5e9970b75cf5e7d3791', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/AI/AiModel.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/AI/Exception/AiProviderUnavailableException.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php' => array ( 'fileHash' => 'aa7506db6ed8e225457cb6659e23076228454c60', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQueryHandlerInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQueryHandlerInterface.php' => array ( 'fileHash' => '5c37f3fc36dbdc7f84f01a1704af7dcfd5c01d8a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiResponse.php' => array ( 'fileHash' => '7de148c462eb9cde8d78e3b0a1acb8f9e9bea2e5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQueryHandlerInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/Exception/AiProviderUnavailableException.php' => array ( 'fileHash' => '7b72bbfd71b6e98607955b1a44370d12b9856282', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/Role.php' => array ( 'fileHash' => '9c33b2ba71821f0060539971f290f0782e64edc9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/Email.php' => array ( 'fileHash' => '61f794731a3807ef423b7505cdcf4209effe3d66', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php' => array ( 'fileHash' => '6fd5c26f034c407cf3c52cb990bca11a5811b943', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Phone.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php' => array ( 'fileHash' => 'c13b0befbdd29075ad30ad1f6c89415f6da17ed8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactMessage.php' => array ( 'fileHash' => '16bf509422a2af6759bf6594f61e69f71362166b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactRepository.php' => array ( 'fileHash' => 'a7656bda8717d3a8ca299864ef4862ae564543e1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php' => array ( 'fileHash' => '599652f994e333f5d48c78a648e0f57f23afab2d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php' => array ( 'fileHash' => '256544e3b10c0a70b09cd862b7180778ad348060', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php' => array ( 'fileHash' => '3d4bf5010d073386014a4201a54d1a65e722318f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Images.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 8 => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 9 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorInterface.php', 11 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 12 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 13 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php', 14 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 15 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotView.php', 16 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 17 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', 18 => '/home/michael/dev/michaelschiemer/src/Domain/Media/SaveImageFile.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageFormat.php' => array ( 'fileHash' => '4ed566ffe31d989213a1494e62299ba7f0650c7d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariant.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageGallery.php' => array ( 'fileHash' => '5232eb752eff7de8eb340be6f6d4fb9bca2eba76', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php' => array ( 'fileHash' => '4a04a6c550682823d312e02507dcbe863d26073f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorFactory.php' => array ( 'fileHash' => '6a0674aea66bcee466dd80615245adddb24d516f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorInterface.php' => array ( 'fileHash' => '7f267e247105c277aa5547e0b2621f41cb46f320', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php' => array ( 'fileHash' => '9abbbf217f1763dbd6550a42e210c40a413bcdbf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Images.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php' => array ( 'fileHash' => '0c306361be7d829e844e291c3b653d29bd7d09d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSize.php' => array ( 'fileHash' => '3719fd2d9fabf1dde6d56e60a9739728bef73952', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariant.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php' => array ( 'fileHash' => '8112e15d92c4922dbaf7016c081c2501de104bca', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotView.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php' => array ( 'fileHash' => '63b0381abd38f4aa0d92f89f8efded5d87a86166', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotView.php' => array ( 'fileHash' => 'ec884a90e03a09e9772939d39d5926a299ef4edc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php' => array ( 'fileHash' => 'beb9231e55f827bf1f7662cb48d3f9b89f945be1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariant.php' => array ( 'fileHash' => 'a84bda19d27802ddef44591bf85ef6d51b0997f5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Images.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 5 => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php', 7 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php', 8 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorInterface.php', 9 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php', 10 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php', 11 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php', 12 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php' => array ( 'fileHash' => '1011ae6a5afa47415f25170a6c3787f9a78e1566', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php' => array ( 'fileHash' => '23712056ee4f59903c7709c7b980aa34ff09cafc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php' => array ( 'fileHash' => 'be8d3b3ba78c3487a3e19fed1c6ec98e115c1bb6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorInterface.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSize.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariant.php', 5 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php', 6 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php' => array ( 'fileHash' => 'c29e89e3c8ca605a5e233dcde70479fc4c8cffa8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php' => array ( 'fileHash' => 'bf2e77aafa49bd55fe7e9efee16507ac40cb5e99', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php' => array ( 'fileHash' => '129ca4be4f21b8921dda62dbf039bdfbb8d8166c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php' => array ( 'fileHash' => '0eb95d8ec054102b38424d8929877e7498b1c761', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php' => array ( 'fileHash' => '7534c3499d3e53b37d8294c7e33c6a12ec18245a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php' => array ( 'fileHash' => 'd8049f704ab1f8f3cfa1b58d172867f4aaf07685', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/UpdateImageVariantsConstraint.php' => array ( 'fileHash' => '22b2c7baa535ce4802bf63948a495ad9f4952ba5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/SaveImageFile.php' => array ( 'fileHash' => '3052a669c73091b9fc13a00b5e64c8679de6a2c7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php' => array ( 'fileHash' => '8fbadbe59ed23a03e34bad35be9046383a3f64bf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php' => array ( 'fileHash' => '0ae415033e5206c573896a34c317f70cda226dd3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php' => array ( 'fileHash' => '1b9df3c9b52cbc94b0b0ee722f517ee711dc5433', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php' => array ( 'fileHash' => 'c46223629b9549515eae84a69b379f0fada6fc3a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Interface/MetaAware.php' => array ( 'fileHash' => '9f20afd6d815537d774b2c6c4c97a8c244248de9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php' => array ( 'fileHash' => 'aad62cc3f9ff692929c64b45081a425ddc5361e7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php' => array ( 'fileHash' => '5ccb4de96386bb278c089dfb45d23180dcbec07b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php' => array ( 'fileHash' => 'eb6c8689fc17148d509e39580e3cba730df86205', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php' => array ( 'fileHash' => '702e61429f05e44b7f759f801135ac0432a72fe8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php' => array ( 'fileHash' => '0490175e72e4b9bc0cd43b4aba663570269f0dc8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php' => array ( 'fileHash' => 'bb946bfb1144887b8bdb8d7c6e8e7c513be6af3c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Domain/User/User.php' => array ( 'fileHash' => '60de8111460f10fd3d20eb14eb9eca931f2be30d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', ), ), '/home/michael/dev/michaelschiemer/src/Domain/ValueObjects/EmailAddress.php' => array ( 'fileHash' => 'a34efc886f168af490c6dc3201e12a10879fd054', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCategory.php' => array ( 'fileHash' => '0bb072f75426850568df903643dd299bf023721f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php' => array ( 'fileHash' => '07de504e1062ee2fd95a3a9400ff77682cad20c9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsConfig.php' => array ( 'fileHash' => 'df49a5b66ae6f27ada6e055eae7fcdf998f0f901', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php' => array ( 'fileHash' => 'e8258f4f3c6f54294a5dcdb3bd3c3d8cfcc0c35c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Bridges/SecurityEventBridge.php' => array ( 'fileHash' => 'c8e91a8e5ca02359706f329aa344b5277ba94eea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php' => array ( 'fileHash' => 'a02cf1564591908b3e8fa8d7ef62468aaee534d4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php' => array ( 'fileHash' => 'df5cd0511068f4421bf90c3b82fb164b5640492c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php' => array ( 'fileHash' => 'd6952c113ab33354d614594beccc0f7516abe23a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php' => array ( 'fileHash' => '036ca8ff6583f00f5cce914c561294b14d2ce682', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php' => array ( 'fileHash' => 'b3273e1e2d729dee84c682f23da65ae449707688', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Bridges/SecurityEventBridge.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php' => array ( 'fileHash' => '1514c0965a46612311ca4c99e2b1ef28487dd645', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php' => array ( 'fileHash' => 'fd20da865b099a1b884e47582130873af6b5c1a6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php' => array ( 'fileHash' => '8efb8d48ed180e20e0184f4d30352ad6737abd9a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php' => array ( 'fileHash' => '0bd0afba32f2736f6c22b1fc17ce919ef3db1497', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 6 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 7 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 8 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php' => array ( 'fileHash' => '3f40f3a4761be644a0b5d619f41e450f556ba15b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 6 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 7 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php' => array ( 'fileHash' => 'baef85c636e2dcd6734b21cb7c8ebc02d5fd7042', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php' => array ( 'fileHash' => '9eb8dacffb8ee97a58bad13b409f8695545819c9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php' => array ( 'fileHash' => '2fabb6a232e0670f34be5c09f89f4bbed44246c7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php' => array ( 'fileHash' => '111642dfe4d926f0d746bda5f095ad1a22257693', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php' => array ( 'fileHash' => 'a67d301b7df8bd515277eda6303377e20c238fcf', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php' => array ( 'fileHash' => 'f68cc3100080924aec39332c2379e4c8d6b2c57b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php' => array ( 'fileHash' => '501c5eee1a94edfa0c09f6b782cca63b1081e03c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncCapable.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php' => array ( 'fileHash' => 'da7f2ab061d7ec4e9dc3ed9a95a65a66206086bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php' => array ( 'fileHash' => '93074e877bcc1d62fab9434a055e1b730c6b7749', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php' => array ( 'fileHash' => '0b095eafcab67045dccbf94bc6e0bcbba1646f11', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php' => array ( 'fileHash' => '59cd8e2c0151f5e82f65ad9fe245dc28e42bf6dc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php' => array ( 'fileHash' => '6d2369beb08444094da03c439b4ec76c15c9b298', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php' => array ( 'fileHash' => 'e66f62304276055357f22b41d822402856a4eb64', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimeoutException.php' => array ( 'fileHash' => '48d4212f0c703c8e289ee3bedc0b2651d66a54c5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php' => array ( 'fileHash' => 'e7d74d8c7cf806c59909023e8a081fe4fe380aa1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php' => array ( 'fileHash' => '105043eb756a0900365ff471d0191815685e535a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php' => array ( 'fileHash' => 'fdd62eb9bb1d928fd0a0c7fde45a972d86e3520d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncCapable.php' => array ( 'fileHash' => 'a7ac0c9e7c3941b9033b03614aa5fe9c35ac6482', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php' => array ( 'fileHash' => 'b10a4ce8e3d5c13f0b4322e369a233cc4d9b38d5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php' => array ( 'fileHash' => 'ccac465508477ccc62cee9fdf8c44a2bf7d09b37', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php' => array ( 'fileHash' => 'dbee2a0a4e791b6bb626a0c9661f78b706e12a8f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php' => array ( 'fileHash' => '7cba426073899076bf02bb75d758eed20d266cd5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php' => array ( 'fileHash' => '84669589d3949276b32e67c46814b01b12f5686d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/DatabaseException.php' => array ( 'fileHash' => '39088e58160280c77886f85546eea0350221bdc6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/DatabaseResult.php' => array ( 'fileHash' => '21c77632d2c9ecf521844e06c7c3af19998bf206', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php' => array ( 'fileHash' => '4ff2e6e279c200ae5335b29650b21894576138fc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php' => array ( 'fileHash' => '8a95ee9b591c8a0ae73d429fcb12d45a733cc78a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpResponse.php' => array ( 'fileHash' => '515e45dcd0c0e195f2222744b8dac5a3b7c22ca4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php' => array ( 'fileHash' => '484e881f3019481643df183bda435e2872083bc8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php' => array ( 'fileHash' => '42a62b7dc3b29be1ab16a69bb86d96d94f4a2747', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/ApiVersionAttribute.php' => array ( 'fileHash' => '7fbfeb86bb8f5372cfc01b09a4437f1c727f1b03', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php' => array ( 'fileHash' => '6da13352f85c5d5bc3f2cab333048de3f6115ca8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Singleton.php' => array ( 'fileHash' => '73508afe9ebfd0697fc68d07387bc4b96f681e3b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/StaticPage.php' => array ( 'fileHash' => 'e00bde51a34571437c0a85a961939aca65aad491', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/Attributes/IpAuth.php' => array ( 'fileHash' => '386bc40bebae0006f2e496067ce4853d1bab442e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/Auth.php' => array ( 'fileHash' => 'ad1955800161b162eb3b7435822d91c168d12b8c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php' => array ( 'fileHash' => 'd36ab641c6704ffa49e6f608b364ba8f57ded680', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php' => array ( 'fileHash' => '8c37ba25a4ca3adf71f128c0b3c2d8a82e01641c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php' => array ( 'fileHash' => '0d7af9acc2fef05246dabfbd0a7c1ab10b54c874', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordStrength.php' => array ( 'fileHash' => '1a23cc2c1c4ca5fd5301371fdb6c230e8af0e94e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordValidationResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordValidationResult.php' => array ( 'fileHash' => '2a2cb66a3130ed7a0e58d701194bcd4a2ce1ab44', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthDecision.php' => array ( 'fileHash' => '187d5272f321a28245eaa23fd9fd592153048988', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php' => array ( 'fileHash' => '2a1fcbc07500971288a4c9fe519bf0184fd83520', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/Attributes/IpAuth.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php' => array ( 'fileHash' => '1143635cbcb975cff9d674aa37cede161cedfc31', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/CacheableDiscoveryVisitor.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php' => array ( 'fileHash' => 'f81e085240d14f5854b75f1ea327d67192c9ff08', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheDriver.php' => array ( 'fileHash' => 'ed35bfdda7d07a1e5b8807a97bf790b9deacdc9c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Contracts/DriverAccessible.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifier.php' => array ( 'fileHash' => 'b1abb6524f5e65fd8fafca186f48bee73536ebc3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheDriver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePattern.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePrefix.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheTag.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/DiscoveryCacheIdentifiers.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/CacheableDiscoveryVisitor.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/NoCacheStrategy.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ViewCacheStrategy.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php' => array ( 'fileHash' => '72a55d4206c3fdfae1335fd0eac0158ca53572f6', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierType.php' => array ( 'fileHash' => '58cef33315e346e58fb9f2799f4615d26a8e2256', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifier.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePattern.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePrefix.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheTag.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php' => array ( 'fileHash' => 'f8104a1cffd35052b4358e87dd1934c82da6fdd8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php' => array ( 'fileHash' => '852d10b36990ef8e59308815ca837dbcdb91290d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheDriver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php' => array ( 'fileHash' => '6cf27353cc20ef79a40ee54f97b4ef750a7c83bf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheDriver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifier.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePattern.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePrefix.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheTag.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/DiscoveryCacheIdentifiers.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/CacheableDiscoveryVisitor.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/NoCacheStrategy.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ViewCacheStrategy.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php' => array ( 'fileHash' => 'f16c51605bf8d7ad92965f6f3a8c2cb8cab3022c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePattern.php' => array ( 'fileHash' => '22ef7117cafccf798b71c901919a79335ac5a6fe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePrefix.php' => array ( 'fileHash' => '0fcb32cb927333c3fac690bc465c2352bda04426', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php' => array ( 'fileHash' => 'deb63696f158f21d73c67df4f3fc2f62489accd0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheDriver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheTag.php' => array ( 'fileHash' => '97c85b665a54cf0a2c7bf771249f73df6d02bccc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/DiscoveryCacheIdentifiers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cacheable.php' => array ( 'fileHash' => 'd0d534450e7b96ce0651b0d78eb82a46febdaabc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php' => array ( 'fileHash' => '26121b935cb9f60c45f5786a3653b69740b83111', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/GzipCompression.php' => array ( 'fileHash' => 'a62a5f8fb75a2e37924c67fdec1e7077c9b7f104', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NoCompression.php' => array ( 'fileHash' => 'cfcabed359b3b64f96a7b1bd5d116e286beb0baf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NullCompression.php' => array ( 'fileHash' => 'e4b7790166ea9b5b34d2be48266a44bd1f1157c0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CompressionAlgorithm.php' => array ( 'fileHash' => 'ef056ca8e573f088269a1b30a6c4933d467c70db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/GzipCompression.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NoCompression.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NullCompression.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Contracts/DriverAccessible.php' => array ( 'fileHash' => 'ebbbf43ab4c25eb4f96e8b19766e381da840596a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Contracts/Scannable.php' => array ( 'fileHash' => '4329731fbce8f96dacdbba20bfed95204692a0cc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php' => array ( 'fileHash' => '6c9323bfa43915133dfc1063fd06c596b33acb34', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php' => array ( 'fileHash' => 'a28be2d23a1ce0c113489c28fac29f0035dfa415', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php' => array ( 'fileHash' => '9355e43360006812fb59b28399c68ea6ef370076', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php' => array ( 'fileHash' => '14a14b0ad070ad318ae48e7ab127ce7d9c5f3b89', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php' => array ( 'fileHash' => '11aa60be79add15dee6f4de8f45eaf2655ebac53', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php' => array ( 'fileHash' => 'eb629ab732411937f20d5be990fe9b8d825f88e6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheClear.php' => array ( 'fileHash' => '642cf0096dea106ab5b4faa5765429c51edd71ab', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php' => array ( 'fileHash' => 'edbb545be63af36594e2187833fd7ee4c09340f6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php' => array ( 'fileHash' => '499b0f68693ff09aebbcbf9c11eee4f8d0cb758e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php' => array ( 'fileHash' => '013f2a1f8d20f26f84f89e4e516749dd57f80503', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php' => array ( 'fileHash' => 'cb633991c025a24c1ab9571f9f07fb34e4f20240', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php' => array ( 'fileHash' => 'fec497371443045cb6d2d265a48c449675ad408f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php' => array ( 'fileHash' => 'c7c4d3c1e20bb4904714f2324a340ddc3dc5d10f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php' => array ( 'fileHash' => 'dae2d66ef109015a6e3b4ed3f83f57e0ca2b377d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php' => array ( 'fileHash' => 'fb5e361b0bc90684a322170beeff34f8031673fd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php' => array ( 'fileHash' => '0229e36ed53eab1f0ea0d88e221a1271b321414b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php' => array ( 'fileHash' => '981959cefac4605a981772a656286e79e92278b8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php' => array ( 'fileHash' => '1162b2ffc4ff175616d2d9064a1629b0b232e66c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php' => array ( 'fileHash' => 'f70c600d5477b70dac4a95a30cce71c94e4f8b01', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php' => array ( 'fileHash' => '48161849e7287708e953dfc8c0cbfed529a08c1f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php' => array ( 'fileHash' => '47cfee47b8832c3809bcf7a5af1eac748bc99ece', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php' => array ( 'fileHash' => 'dbed43f1b3c59300f0d1d491a63c1ae3ae0dc396', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php' => array ( 'fileHash' => 'be7d58b24d8c47273358f819b010d271e1594300', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php' => array ( 'fileHash' => 'f4f1b822ac5530591d0e14b62c06b6c5a611b4e2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php' => array ( 'fileHash' => 'b14724af77751ae2c7505a7f2cc2d05aad30bdbf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerConfig.php' => array ( 'fileHash' => '5f260fd05a5cf271a676090ea5cdf673b38b94bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerException.php' => array ( 'fileHash' => '7f5be937a3e93c9f5e51e2ab15608b02628c0013', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php' => array ( 'fileHash' => 'b5f965e1094b2a8ac8acc0d696107b3744b9fe3f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInterface.php' => array ( 'fileHash' => '104d60cc255d23718d8fc96e6b4a684f1ca2f52b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php' => array ( 'fileHash' => 'aa0ba7011b499eabbdcad6c83acf4c989f731d7c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php' => array ( 'fileHash' => '5d398b5ad3abfa2adf666a25157526cb40964f14', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInterface.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php' => array ( 'fileHash' => '299d0d2dba7283f08fc5e2c152916b4bea188e4b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitState.php' => array ( 'fileHash' => '6ae3c01a4efd1f3433dcb78bbc3188c2bde2ae35', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerException.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php' => array ( 'fileHash' => '9f46e29aa6ca3a265f10adc6ba6617126b195e07', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php' => array ( 'fileHash' => '1aa955e263efbbb8a61114b46ed8cc752dc398c6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php' => array ( 'fileHash' => '860ab989dc43c1c6d1b1452953d3e5817190037e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php' => array ( 'fileHash' => '73036298c002bd0f09473075c2a6982335dd967b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEventPublisher.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEventPublisher.php' => array ( 'fileHash' => 'a2cb70f4c699efae18a48d5ed7c47fe9d65d912e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php' => array ( 'fileHash' => '945149680f415bbb7261d7061b1e0372d1011b47', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php' => array ( 'fileHash' => 'd524109fc24722b44b26c338342d9241bc3f5f00', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php' => array ( 'fileHash' => 'a0159d3d476009d8ba7f83af9b7631205a224b17', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php' => array ( 'fileHash' => '593eee7978a4f8f62438e3b38f8f7ab4ec1ebd86', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CompositeFailurePredicate.php' => array ( 'fileHash' => 'ada0d2d317df93c6cb9ecd4d723122eb5735d1ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/ExceptionTypeFailurePredicate.php' => array ( 'fileHash' => 'f764f5e92b889d5556493932dfe6d25cd754803d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicate.php' => array ( 'fileHash' => 'f93f8951348a544c55f40f321e6e42d8dca0185c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CompositeFailurePredicate.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/ExceptionTypeFailurePredicate.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php' => array ( 'fileHash' => '534c103f21b7d018822b9529377d98c671d66689', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php' => array ( 'fileHash' => 'e69a3ebb56ddd375ec32842aa7b989b379700448', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php' => array ( 'fileHash' => '13f5714961ba0c8981481b1f83a26c8c974b37c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/LogicalOperator.php' => array ( 'fileHash' => '5dc4195dc1c9f004a20cb442f382ea1588d0d74c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CompositeFailurePredicate.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php' => array ( 'fileHash' => '365524e4acc955b785b00d46e7e79a36cc15f114', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php' => array ( 'fileHash' => '7ab0176da15defa43fc62c510405fac0f767e1af', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php' => array ( 'fileHash' => 'ae927ad3248e1581c860d31990b2ec242d2bd385', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php' => array ( 'fileHash' => 'b95984e559e1e6604f8aa303514cc941e30d5fb0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBus.php' => array ( 'fileHash' => 'bfba1d693786e7776592cd875cfcc4346404e740', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php' => array ( 'fileHash' => '3a9ad33f592ab15e437ddb61bc7a27e6b0ef92cb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandler.php' => array ( 'fileHash' => '1ba97ddf85a7f01b75f8a8f534c7564d0519fe9f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php' => array ( 'fileHash' => '7362c8141d3039e51df449c423ac28d24aabb63b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerDescriptor.php' => array ( 'fileHash' => '64b3b7797eb658fee6a29233601345f74d629969', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php' => array ( 'fileHash' => 'fdbb5bb6ca1dd81e782379afd0c27ff2e706222c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php' => array ( 'fileHash' => 'c2c06bcceb46583c6fcb3dea57c6ad6b310ebb60', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php' => array ( 'fileHash' => 'eefaecda2c074f2e4fcd837a64b450eea9e3c37e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Exceptions/NoHandlerFound.php' => array ( 'fileHash' => 'c5b5adbe9d772a3622c5a8976a0f08021a91cd86', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware.php' => array ( 'fileHash' => '032fef3502eeb450e624fc688d322f4ab365087f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/DatabaseTransactionMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/LoggingMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/PerformanceMonitoringMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/DatabaseTransactionMiddleware.php' => array ( 'fileHash' => '14d64c0d17f3b3795cb32034da53385a4361aab9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/LoggingMiddleware.php' => array ( 'fileHash' => 'b8d9ae08e65bb0aafbfd9433a54334dbac29de66', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/PerformanceMonitoringMiddleware.php' => array ( 'fileHash' => 'e8954e5367b8613468c6ee4611a6a0e864bd8728', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/ShouldQueue.php' => array ( 'fileHash' => '1d1e2a738bb588cd9497bf747fad7251beee713b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/AppConfig.php' => array ( 'fileHash' => 'ccd0f3bea3905464e09375a5fcb22e14d86a14e4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ConfigValidator.php' => array ( 'fileHash' => 'b5d230c2c09e51115a61f2b3af7350caa123aec1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php' => array ( 'fileHash' => '8afe8cf604450d93a12312de536bc876b5565d21', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/DiscoveryConfig.php' => array ( 'fileHash' => '807cf8c8f68d455585ddb39bdf2d08efa6858c55', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php' => array ( 'fileHash' => 'e4145f34d33e452ef4035769c68f9d0311762588', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EnvKey.php' => array ( 'fileHash' => '3866b1effab67e2856f0024400ae560f58dd51a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/ConfigValidator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/External/RapidMailConfig.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php' => array ( 'fileHash' => 'aad9a5299548ebd8eb579bdbb8319222716acf4c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/ConfigValidator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Config/DiscoveryConfig.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Config/EnvironmentType.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ExternalApiConfig.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Config/External/RapidMailConfig.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ShopifyConfig.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisPoolInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EnvironmentType.php' => array ( 'fileHash' => 'bf551e51fbc76e9cb18501452bd8042e48e47f8a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/AppConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Exceptions/RequiredEnvironmentVariableException.php' => array ( 'fileHash' => 'f027f99345fcea19bdd86ef1b80602e8feb96ad3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ExternalApiConfig.php' => array ( 'fileHash' => '4d7fa0f14cc9be76e1e41e022955af561da62491', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/RapidMailConfig.php' => array ( 'fileHash' => '1f1b1d43ee0fabe2401ab2a4f788f9a26ef0d1f0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ExternalApiConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ShopifyConfig.php' => array ( 'fileHash' => 'ef4b67481b6ed0fdf75873748f6191408bd822e1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ExternalApiConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php' => array ( 'fileHash' => '10ec469384329cdb1fcb4ae82167c6afa79d57c1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php' => array ( 'fileHash' => '51247d4fa96167c1c469b61f4ce25d840826dd67', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php' => array ( 'fileHash' => '30f7ae8b738df83c618080bc86eab0fb2af3e5f4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php' => array ( 'fileHash' => 'c5e18855244e9ac974d4b4663227f4bced167823', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php' => array ( 'fileHash' => 'ac5c9fda34fc5688e27fb0e891dbf84dc0b03324', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityRiskLevel.php' => array ( 'fileHash' => '01fac6d6ae71a772848cf3e39cc6629cd689f220', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/WafConfig.php' => array ( 'fileHash' => '47c7ca9a704f53335654609df91c52b505215cf2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandList.php' => array ( 'fileHash' => '879364ef5c90549ef2d6794dc1af486e84c8163c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php' => array ( 'fileHash' => '71bfcf8fd40c24570e4a6751a9f45b6c5eaea131', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php' => array ( 'fileHash' => 'b538fb42abfee7dc39f48be1b0aaed5eefd2ec15', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php' => array ( 'fileHash' => '96460d8eb857b8584a823bcbf457670ec005c79a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php' => array ( 'fileHash' => '6681df40309f3bc932f0ba43c7d6191c907cab26', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php' => array ( 'fileHash' => '91fc138976ef74dca2a9f82856d824bb2f23cb22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Console.php' => array ( 'fileHash' => 'ecb89155c2262afc231eed8496f37421cd548646', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php' => array ( 'fileHash' => 'e158b1c350484c49a2f6de31dc8cb603f6097fae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleColor.php' => array ( 'fileHash' => 'fbad95900c94d2773670f34804cbaaae7cb578f1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutputInterface.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleStyle.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/CliErrorHandler.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogLevel.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommand.php' => array ( 'fileHash' => 'b8830b0807376573c205184b6a14ad877ed62330', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandList.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php' => array ( 'fileHash' => 'bc576ec32a0197e70cc369e426bad72fe91003bf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleFormat.php' => array ( 'fileHash' => '00518de4f675e11cf0df486b08417339216a29ed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleStyle.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php' => array ( 'fileHash' => '3499f4653603384c1870c67ba2e225a7690df16e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php' => array ( 'fileHash' => '8f948273a92e2b607d85dcb076c6e48f643060f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Console.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php' => array ( 'fileHash' => '86b7f32f5a38250d209aa745f617b054c12440b6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Cursor.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/CliErrorHandler.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutputInterface.php' => array ( 'fileHash' => '6aaeec243898cef51307b218000d46ccc1a0e861', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Console.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Cursor.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/CliErrorHandler.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleStyle.php' => array ( 'fileHash' => 'f5777cebbd6a53b0297df379fc2b5fc68bb76c8a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutputInterface.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php' => array ( 'fileHash' => '1316ba761949837c823b52e055c89121f8dfc023', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php' => array ( 'fileHash' => '7d955d0575aad8068f5d3f91638d352aa6f26cca', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php' => array ( 'fileHash' => 'ec038864e6a5e9b823f963203f6df5bdbc9ae7ed', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php' => array ( 'fileHash' => '937228c8b0b53ac2acca0264f8676b6a2083b789', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php' => array ( 'fileHash' => 'd672adf731501ddb0e64ade8414b7e1ef04a4575', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php' => array ( 'fileHash' => 'ec422773af60ec80b84f6ba31619eddfa0fa5277', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php' => array ( 'fileHash' => '3ca3b1aa3fb857f68d19287ba0486c0c883fb386', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php' => array ( 'fileHash' => 'e53989f64f49f98f4fd33c487abe1355c069baac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/ConsoleException.php' => array ( 'fileHash' => '636bc149368b5b2477d9e699860281048fe098e3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ExitCode.php' => array ( 'fileHash' => '601554cd76c1a4cb793aada518afa2fea7f540d6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/LogQueryStatisticsCommand.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php' => array ( 'fileHash' => '7f92e67d4a23f159d0bfa9c05a806a6cd9cdb6ab', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ClearStrategy.php' => array ( 'fileHash' => 'c5f271756e5726a4697591367c570102807ad2a9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Cursor.php' => array ( 'fileHash' => '8ffb5ac59b75f796d382e0c05f3ff29fadc362c0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/CursorControlCode.php' => array ( 'fileHash' => '26f0a104c9f45db213e04360915c4f712813e623', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Cursor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php' => array ( 'fileHash' => '9aac1b65f41ecc99b3791efdb9d9c9670696cdf3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenControlCode.php' => array ( 'fileHash' => 'de38e05e7debdf699b7f2c5118b28f1e37177508', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php' => array ( 'fileHash' => '0cda73cb662345a41371c96becc1451763970773', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenType.php' => array ( 'fileHash' => '2d17e55f84f4b2c0ec5e0039e6c5910dd84c087e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php' => array ( 'fileHash' => 'fb1a798445701c7792beddff6b178e3cbbcb36aa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/SpinnerStyle.php' => array ( 'fileHash' => '615886ee005958afb5033d09a131f5718da31956', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Context/ContextType.php' => array ( 'fileHash' => '49c91d1c1607fbbce75a7dd1fdec3cbb6ae06c52', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Initializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Router/EmptyCompiledRoutesInitializer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php' => array ( 'fileHash' => '584d8ce911bb9e173b1a476eab2ccc818de5c3d9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php' => array ( 'fileHash' => 'f4e68e3a2fc58f68c71d7a0b5e0045a00dd46102', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php' => array ( 'fileHash' => '9767bcf7aa6861dc1cea63eb3a7738f1e1731cb3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ApplicationInterface.php' => array ( 'fileHash' => '46e33072244317230d99858aadc512af3187cb99', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeCompiler.php' => array ( 'fileHash' => 'df9f95172e87b921baf696d51be8b0099b0738c9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php' => array ( 'fileHash' => '5a5b18142a0686a728ae44edaad8a591634a0f60', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/DiscoveryConfig.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapperLocator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapperLocator.php' => array ( 'fileHash' => 'd845b8bc47b0b84ee901bc99b06413599cf7327b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php' => array ( 'fileHash' => '2a4fc6509a0a13bff288cf90f7d0662f7e0f42a2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php' => array ( 'fileHash' => 'af6f7bd575aed8bd703ec73523b6ede5a0b6f1ac', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php' => array ( 'fileHash' => 'b2e885c7990bfd3359ce47a1eb9641235c4747f0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php' => array ( 'fileHash' => '57a4786a7b1e43dd148007e567edc855f094eab7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php' => array ( 'fileHash' => 'f2165920ef48fe4f910a3cdd7b5611086f0363d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteData.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Alphabet.php' => array ( 'fileHash' => 'cfe02442611f63c066ec674e6153c79da0444951', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/StringConverter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php' => array ( 'fileHash' => '638c876f98322a331d9a0a01e7c4e509e00ebef7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/StringConverter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/AfterEmitResponse.php' => array ( 'fileHash' => '190dd2cf1aa1028ae05a5ff3c2ee1e3453c1b856', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/AfterHandleRequest.php' => array ( 'fileHash' => '87e2a524b779833848b8bac77fe924a867fb921b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ApplicationBooted.php' => array ( 'fileHash' => '89f7dd61af3eaf50e3cb4df57ba13269a5fc98d1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/System/BootLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/BeforeEmitResponse.php' => array ( 'fileHash' => '93fd9a8ff6a663ad83b0c2ad981d19773d4826fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/BeforeHandleRequest.php' => array ( 'fileHash' => '917bdd305e1c4202a4de689920788caf1931a472', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ErrorOccurred.php' => array ( 'fileHash' => '3b00741204d392226b1b040645e62e10d7ecbcb5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/System/ErrorLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php' => array ( 'fileHash' => '9caa63d1c6ea197880ee83d01e9dba48a7f6d4bb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php' => array ( 'fileHash' => '349589c5254bd5dbb7e3742a20fe712df8c30fd0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php' => array ( 'fileHash' => 'a16657d67fad9558c4601598fcc2ad7a70f03031', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInterface.php' => array ( 'fileHash' => '4112101f623ec37714756de111bc470da79c88df', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php' => array ( 'fileHash' => '8d99780f9e429d1d94b632f0a5ba3a16243058c1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php' => array ( 'fileHash' => '6130bd190059f66936f052ebf01072f5d47457e4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/OnEvent.php' => array ( 'fileHash' => '4311d5273161367d3042b67f81c9e11d9d0dd6f5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php' => array ( 'fileHash' => '02423b6f51d93dda9af31b4917cbb86d49c0cf36', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/System/UserRegistrationLogger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/InvalidRouteCacheFormatException.php' => array ( 'fileHash' => '22170a109cb73c34baf1f5a319bb425ce472c98c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/RouteCacheException.php' => array ( 'fileHash' => '11c57ed877ba5c867ae4fd6b8a15e920adf43c8d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php' => array ( 'fileHash' => 'b1d668bb16af4693a18ee8646c3a3023698d7895', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapperLocator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php' => array ( 'fileHash' => '21ff12568e8acfee479a2e3acc2cd92fb16db7b5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php' => array ( 'fileHash' => '0c377a4c5357a42288b91dc017a227dea6a9ea15', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogConfig.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewerInitializer.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/GenerateStaticSites.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ComponentResolver.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DefaultPathResolver.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/LayoutResolver.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php' => array ( 'fileHash' => 'bc383b90db37958fababfbc318144485ebf1e390', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceResult.php' => array ( 'fileHash' => '75dbab0b30fc04ea07c66eaa136962cbf0b57923', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php' => array ( 'fileHash' => '950ab71375d32a8db81e8edc9d3f4e959f668f4d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ProgressMeter.php' => array ( 'fileHash' => '1d1ee5079888dbd81165614468e65b1141ac9334', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php' => array ( 'fileHash' => '48506d56cb3666fa930047b06496c9cab443758e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteData.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteMatchSuccess.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php' => array ( 'fileHash' => '59f31afd3248349f8a4fd5f56062f4e30ce051af', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php' => array ( 'fileHash' => '5e56e1f8f9a7d88bdd3a986b13e68ddea60aba69', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php' => array ( 'fileHash' => 'adde56522f289b6fe9a0e154326b7ce83658ee33', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php' => array ( 'fileHash' => 'af44b320b2d3987eaed7304e9a9972f9d02b4569', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Byte.php' => array ( 'fileHash' => '07ee4aab57115018b2d60bed004f064b09b3573c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheEvictionEvent.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryCleanupResult.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/InterfaceMapping.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Email/ValueObjects/EmailContent.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Attachment.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/MemoryMonitor.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSummary.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ByteUnit.php' => array ( 'fileHash' => 'a1f34017538ed7229a76ec2af59bedac84366df4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Byte.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php' => array ( 'fileHash' => 'c67baa265f50883055741e29a1f48a55f146aac3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ValueObjects/DependencyGraphNode.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryVisitor.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/ClassDiscoveryVisitor.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ReflectionAwareVisitor.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/InterfaceMapping.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ReflectionContext.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyException.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/AttributeCache.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/AttributeReflector.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/CacheManager.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/EnumReflector.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/InstantiationReflector.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ParameterReflector.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/PropertyReflector.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ReflectionCache.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionAttribute.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php' => array ( 'fileHash' => 'fde4a792639bace4e40062116aeeb0aef7ee620f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/CountryCode.php' => array ( 'fileHash' => '88f88128f3d30c59a81c721dc627fe410b2a630c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Duration.php' => array ( 'fileHash' => '6aa4036c7a8de1383973003cd274cc623a264463', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerConfig.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Config/WafConfig.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/ConstantTimeExecutor.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheRegion.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClock.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemHighResolutionClock.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemTimer.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Timer.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryConfiguration.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 106 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 107 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryConfig.php', 108 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 109 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 110 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 111 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 112 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 113 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 114 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 115 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 116 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 117 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', 118 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 119 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php', 120 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 121 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 122 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 123 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 124 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 125 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 126 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 127 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 128 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', 129 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php', 130 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 131 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php', 132 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 133 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 134 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 135 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 136 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 137 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 138 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 139 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 140 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 141 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 142 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 143 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 144 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 145 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 146 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php', 147 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 148 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 149 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 150 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 151 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 152 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 153 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/CategoryMetrics.php', 154 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 155 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', 156 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 157 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php', 158 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 159 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 160 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSummary.php', 161 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 162 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 163 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 164 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 165 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 166 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 167 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php', 168 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 169 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php', 170 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryStrategy.php', 171 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 172 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php', 173 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php', 174 => '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenData.php', 175 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 176 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 177 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindow.php', 178 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', 179 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php', 180 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 181 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 182 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 183 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManager.php', 184 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 185 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 186 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 187 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 188 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 189 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 190 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 191 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 192 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 193 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 194 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 195 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 196 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 197 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 198 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 199 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 200 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 201 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 202 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 203 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 204 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 205 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 206 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 207 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 208 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 209 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 210 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 211 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 212 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 213 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 214 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 215 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 216 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 217 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 218 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 219 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 220 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 221 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 222 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 223 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 224 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 225 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 226 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 227 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 228 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php' => array ( 'fileHash' => '746c6cadc6a17859473503d574722d91d436c2ae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/User/UserData.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/GrowthRate.php' => array ( 'fileHash' => '427076fdde44c96ac0a478b8458b3dcf813d2219', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Hash.php' => array ( 'fileHash' => '3c9760a96ee97c37260f945dbf990221fbc1dd10', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/HmacService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/HashAlgorithm.php' => array ( 'fileHash' => '62d0fadc1969ce264e3704bccac53b67d7b0066f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Hash.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/HmacService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/MethodName.php' => array ( 'fileHash' => 'b7eb6c4e50a9ed5ebb99eede53aa39888ec03d2d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ValueObjects/DependencyGraphNode.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Percentage.php' => array ( 'fileHash' => '1090d85eb5db7a720a1405e77a5bcb40a369d9d2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/ActionBreakdown.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BrowserBreakdown.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/CountryBreakdown.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/DeviceBreakdown.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Byte.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/GrowthRate.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorVelocity.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/MemoryMonitor.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ConfidenceAdjustableInterface.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ThresholdAdjustableInterface.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Port.php' => array ( 'fileHash' => '332fd58dc2fd4ef137412fc685d3da7cacc13701', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php' => array ( 'fileHash' => '4fb9cddb83e5f1d32d56c196f091754855940b4d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ScoreLevel.php' => array ( 'fileHash' => '368aa0834af9c4752df210880f01fc03df100566', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php' => array ( 'fileHash' => 'bdc77062f1cfe98fa80e07eac4bf877e4defbaef', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationLevel.php' => array ( 'fileHash' => '6cd451e7ced4c6276956966fe237ef1ea3c8080a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php' => array ( 'fileHash' => '560fc00dfe8d75e4bde86126b2178b04c764d884', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php' => array ( 'fileHash' => '0ae8e7b0525288d9dda108ecca377a72671d3bb1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php' => array ( 'fileHash' => 'a40c49bcfe296ea8007a5a2213f754b10f061e9d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Version.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php' => array ( 'fileHash' => '426b68f6c76e7a0e48b5dbd03b23b1357a8100df', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/AttributeCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/CacheManager.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ReflectionCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/TimeUnit.php' => array ( 'fileHash' => '88d16fa8c6574704571687c772112e65e181ef93', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Duration.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php' => array ( 'fileHash' => '9a573286efe8573f300f3a186748f1969887fe99', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Duration.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Clock.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheEvictionEvent.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateEnvelope.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScannerInterface.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 106 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php', 107 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php', 108 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php', 109 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php', 110 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 111 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 112 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php', 113 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php', 114 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php', 115 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 116 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 117 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 118 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 119 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 120 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php', 121 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 122 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php', 123 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 124 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 125 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 126 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/MemoryAwareCacheStrategy.php', 127 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryAttemptEvent.php', 128 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 129 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php', 130 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 131 => '/home/michael/dev/michaelschiemer/src/Framework/Search/BulkIndexResult.php', 132 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 133 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 134 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php', 135 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php', 136 => '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenData.php', 137 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 138 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php', 139 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 140 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 141 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindow.php', 142 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php', 143 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/WindowEntry.php', 144 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 145 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 146 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 147 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 148 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 149 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 150 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 151 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 152 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 153 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 154 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 155 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 156 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 157 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 158 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 159 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 160 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 161 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 162 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php', 163 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php', 164 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php', 165 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php', 166 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 167 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 168 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 169 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 170 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackRepositoryInterface.php', 171 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 172 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 173 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 174 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 175 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 176 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 177 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 178 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 179 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', 180 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 181 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php', 182 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 183 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 184 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 185 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 186 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 187 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 188 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php', 189 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 190 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 191 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php' => array ( 'fileHash' => '808de242d9d330d7de6f42b419fccab93d92ce10', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php' => array ( 'fileHash' => 'e0fe2dc4b3c415e426a987584cebf84e3c272cb7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Url.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Version.php' => array ( 'fileHash' => 'b701ebc5af7c4ddaa3e8072bb5b1ea71dbfad5d0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/VersionInfo.php' => array ( 'fileHash' => 'a0e821eef75d6b22c169ba52b5891fca85f0f8b3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ViewModel.php' => array ( 'fileHash' => '8ad4bd4fa318d28f4b0ebbb9d8d7b32837880582', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/HomeViewModel.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php' => array ( 'fileHash' => '2767a7e39cf33bd75be11613aaa0777f152cc8ad', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php' => array ( 'fileHash' => 'a01046282e7118bfd5b363ff9079bb1caf212149', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/HashResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/ConstantTimeExecutor.php' => array ( 'fileHash' => 'd4215d54637906860b97692d27b93f9dcafbd352', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php' => array ( 'fileHash' => '26115682eb86f49f7d5fb98fb7e43b7747751337', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DerivedKey.php' => array ( 'fileHash' => '9a263efe1cab94ef4accd031b2192a2042f9b749', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php' => array ( 'fileHash' => '1190a5d7b7984296141ca64a4f94148e4c074ae0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignatureResult.php' => array ( 'fileHash' => 'bcdaec9782016938c886c3fce0800eba9b0f32bf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/HashResult.php' => array ( 'fileHash' => '64764b1b3d462f33242ab5ed4bf53ea82ffd29f4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php' => array ( 'fileHash' => '83089802cc26fe669d8f4ee4b6c8a81444cb270d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyPair.php' => array ( 'fileHash' => '70120c5912b21a4892fb4e081bd360cb95e6e3cd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PrivateKey.php' => array ( 'fileHash' => '25c995bd98b7bf5ea85a9b403cc1c19deae1aefe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyPair.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php' => array ( 'fileHash' => 'e69f21a8787fd21c027af49bb35a541529fd37fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyPair.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PrivateKey.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php' => array ( 'fileHash' => '0ea0cf95ccc4a46a4aa1086ee57286e079b89da0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureTokenGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureTokenGenerator.php' => array ( 'fileHash' => '88da8017b86762d08d618de98ce4fa4039e89a23', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php' => array ( 'fileHash' => '6d36c47cf659ec7ac35c37543bb21bc0da7e5f2c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php' => array ( 'fileHash' => '17b9e2f71b0fdcc58d26724002c102ddfbe1777d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php' => array ( 'fileHash' => '8cbabc3ddbeba8256f2652e218aca7fdab0dd4af', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php' => array ( 'fileHash' => '47800f26dc271e658a1318bc166b92e3608f8941', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php' => array ( 'fileHash' => 'd6fc1611c5954ee7af8c78ac13f75e9114fc29bb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRiskLevel.php' => array ( 'fileHash' => 'fd6bad77d72fe06b1f4792876c4a74cf0139c9ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php' => array ( 'fileHash' => '26fd90f8782f5bd54f4d38c48c06015654bba93b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/DistributionPattern.php' => array ( 'fileHash' => 'bab636e7051c9e2d8fc3fd3606e45f5eb639e894', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php' => array ( 'fileHash' => '30fc91ad24f597281c8a85015ff91d0c65bd6db8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/VelocityTrend.php' => array ( 'fileHash' => '007a79bab15108a436d9b1642b2f97ee8d980de0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php' => array ( 'fileHash' => '339f181f729efbc907d9e191086098182ee0a3fb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php' => array ( 'fileHash' => 'a8d5d63a80828ae4a172019f1435a74f96c60e3d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php' => array ( 'fileHash' => 'f21f2362b403c32bf935f21e91f97318e44e88f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php' => array ( 'fileHash' => '6f207ced03b90df3d8359097893504ea2b637a41', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php' => array ( 'fileHash' => '7fbc454ab0f3a35e0074ebd684b6b4a794482567', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php' => array ( 'fileHash' => 'dff395cca724e592c6fd5f1055a0d9967df2dc0c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/WafConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php' => array ( 'fileHash' => '8b5f3f8c1e1ae54c11fe992778593f56f2ac8af3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php' => array ( 'fileHash' => '4dc613861a54cb6d5615fda2f58e06a38eba0ea2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php' => array ( 'fileHash' => 'b085214cad35593ee08be25f136858766f97db56', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/ResponseAction.php' => array ( 'fileHash' => 'a652f9b8981d290f1253b80b67c5103dfaad18a4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/ResponseType.php' => array ( 'fileHash' => '7006a73698918288418496b84d723225f3159db7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/AttackPattern.php' => array ( 'fileHash' => '555aa0aff0702ec1d2e2cae4f01a1eb97e482601', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php' => array ( 'fileHash' => '9c54aab22095360e3659adb6a4b55ce2b4bb9013', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatLevel.php' => array ( 'fileHash' => '869d182564df9017a11800e90e557565bc444a0d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php' => array ( 'fileHash' => '48a23fb772e6d240497a1e5aceb0e5d7ab90644a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafConfig.php' => array ( 'fileHash' => '88f902d25869bf6b28ec8b84c69a46ecd9b5195c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php' => array ( 'fileHash' => '680db4ed1f6ebdd8385c1e99a7465b46a4b69e3b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php' => array ( 'fileHash' => '935d1c9ccfff5c5e115adba99379508e91bec5a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Container.php' => array ( 'fileHash' => '31ebe55072875638948ba6ee6ccae94673865a06', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInitializer.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGeneratorInitializer.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisPoolInitializer.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteParametersInitializer.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', 80 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php' => array ( 'fileHash' => '7de2c6bfc739dab6a9a1d53f60a5f8c5c905ae3d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php' => array ( 'fileHash' => '0f54627e7c06f84927ef886b67fbe225e24d3616', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php' => array ( 'fileHash' => '3a4e6d43e024691ce7e3f07956c21d18a30da594', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php' => array ( 'fileHash' => 'b26d0b75d1c4550278b1e14eae03c91c80c80f50', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php' => array ( 'fileHash' => '4f51780be3fe401cb6bc9100fe18f69aa45885f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyCollection.php' => array ( 'fileHash' => '61b59b5371ad93aa8e78eaa27e144a915c7b10d2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyType.php' => array ( 'fileHash' => 'b8871e7059169c68ea91328dfeaac797c44c62f8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php' => array ( 'fileHash' => '76b87745e9ec7b2c1b5aedd55159adc84c4a1ed7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php' => array ( 'fileHash' => 'e3dba777a8f9d37369bc374d1a741f3062a34921', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php' => array ( 'fileHash' => 'c27e529bc7a7c5bcb270c5ee6e7b7c60a34fb1a0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php' => array ( 'fileHash' => '3d8eedb3950bacd3ecbcbc8af4a8b06535f226b0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php' => array ( 'fileHash' => 'b5b4e5a52492cfca0f919f4b5e9c696cff0a5b2a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/LazyLoadingException.php' => array ( 'fileHash' => 'e2a0bcc51895112858311e0cdf602c1853c17e01', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php' => array ( 'fileHash' => 'd10bc7be62179ae2c3d53a14d1d43e3a369889c7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Initializer.php' => array ( 'fileHash' => '37026f059923304a9e55cd152a23cd82823e6f62', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php' => array ( 'fileHash' => '7a0d24060ad17838b2515134fbf15f8c903083db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php' => array ( 'fileHash' => '098d88c385f5eb03d43cc1b7fdf3a264c9460fcd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php' => array ( 'fileHash' => '0f3f411d42c63129f0002a586e7ec393df212e57', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php' => array ( 'fileHash' => 'cc277228afd1263292c42e7c6ce5165b018517ce', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php' => array ( 'fileHash' => '4ff38ca1894548026c72b33bfa59341ae9e7f9a9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Container.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php' => array ( 'fileHash' => '32a72bde895f4f2cd27d86a3121e6eacb5961834', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ValueObjects/DependencyGraphNode.php' => array ( 'fileHash' => '09593c812d0d496861d3700564c1171e5d37ae21', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php' => array ( 'fileHash' => '2a4a23e0de1a816f0dcb87271fc6b96abd0f678a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php' => array ( 'fileHash' => '7bed00d37de9d09f5d75b9f9b90deb0b24f249d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Contracts/AsyncCapable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php' => array ( 'fileHash' => 'd55f5ffc5b79c0b8e1c341e239f7f1aebe705f96', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php' => array ( 'fileHash' => 'f7ba090d8073505ccd5e4fc46c7156df52e173d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Column.php' => array ( 'fileHash' => '98c4ffb75257fd0ad712e063fff0b9d2dc686614', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Entity.php' => array ( 'fileHash' => 'de73cf97e693d2fa34bf3bb74f2f9cd9fdeb4232', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Type.php' => array ( 'fileHash' => '0f4c0d8c09293527b3290e6b871101982c0fbf06', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php' => array ( 'fileHash' => '31f0ae081aa8be0ec988c2474e6c2caa308c211a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupResult.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php' => array ( 'fileHash' => '80766de6c3d493b1d9c113120979f24c972b8f86', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupResult.php' => array ( 'fileHash' => '340605799a80bd9c57a63b5a7c4d05642477baf3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupRetentionPolicy.php' => array ( 'fileHash' => 'c389030219f53a5e9048b269561658c5580e7af8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php' => array ( 'fileHash' => 'bb3cf128dfe278d4f611d847a41930a491740d50', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php' => array ( 'fileHash' => '44a4eb5d374564b6d697632e26cf55c0a71cdd55', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php' => array ( 'fileHash' => '05f6870aa289e57b306be1521164d5898596ccc9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php' => array ( 'fileHash' => '0736516432f87d35e83f84cdb034eeed352327d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php' => array ( 'fileHash' => 'b2950cf132fc18617f11b782c848cf5fc36b7892', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheRegion.php' => array ( 'fileHash' => '925bd9ca7e843770f2a1d07eeff5983dc299abd7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php' => array ( 'fileHash' => '8c27ed63ab7b2f1fc758477d27c30da776c64856', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php' => array ( 'fileHash' => 'ff87912658a9d08a596ed8d06d02dd936d229de4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php' => array ( 'fileHash' => '73801c3e3558e0e158b10bdcaf0e64db257e4019', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php' => array ( 'fileHash' => 'a363bf1497a0c84604e6195ad6fb907b3b0b12bd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php' => array ( 'fileHash' => '6140182f1e4318ced2043864ef370724a9b38d6a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php' => array ( 'fileHash' => 'f1464621bbd69f34f54fd5a4d6b2d3797c4f666f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php' => array ( 'fileHash' => '312c1dbc8981a377273657fd21baed27a3f456e1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php' => array ( 'fileHash' => 'c9ec4e4efabfcf499ad94d9883687a391ce35420', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php' => array ( 'fileHash' => '6674b49b0f1cfc8c3455ee4b41ae954e8b416f19', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php' => array ( 'fileHash' => 'be8fd57fc093dd30fe93ddd34c0e564bc1c24960', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php' => array ( 'fileHash' => '0d80e3da13e921f3983e89eca38cf8796018bd40', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php' => array ( 'fileHash' => '2a584fccb63c3e1af17927ae5bb7accc64345bb5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php' => array ( 'fileHash' => 'f41cfa312039f5be16e52f95f3148f547458ac32', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php' => array ( 'fileHash' => '920a8f7d7138ecfc48895acd28ad2413bd253c41', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php' => array ( 'fileHash' => '057c263002feb5230a39167fdf6a4d60c5d5d5d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php' => array ( 'fileHash' => 'a6d33b04b9280178ad58545a633fdc47ca53536d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php' => array ( 'fileHash' => '633a8638f9400cc9fe88e7aeb8987c533dfeac79', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php' => array ( 'fileHash' => '98d1381b2ca3e6cd1425321c58757de5ce2f7b0f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php' => array ( 'fileHash' => 'fae40a6fef9ffd9a92fa9285dc1d6f23f5c67dd3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php' => array ( 'fileHash' => 'afa063988727f128c61eedcf3bab9ee144b207db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php' => array ( 'fileHash' => 'dfeffb72bf8103825e1779559001d4d19b233b4c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RecommendationCategory.php' => array ( 'fileHash' => '2ccf8e879759f603d9d50925102f0626b64ec116', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RecommendationImpact.php' => array ( 'fileHash' => 'ce6058dd66d8a28de19a98f7871887253ac70158', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RecommendationType.php' => array ( 'fileHash' => 'aef1b3f4bec4644698fc133350c3e81d35c5695b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php' => array ( 'fileHash' => '90f36152dc3ab73c75e4ac3d2590b73e325b4bae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php' => array ( 'fileHash' => '1b958f4b2f0098267157d792e72552a2d2e7a41d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php' => array ( 'fileHash' => '710aa87a73d526a7309810595d61c668fd2c6b1f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php' => array ( 'fileHash' => 'b57d53f1ecf439071006fb369ed093496dd0f5c2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php' => array ( 'fileHash' => '38c2994e3b117402be43cef202e2d3ec70c7c33a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php' => array ( 'fileHash' => 'c1e2b09e217c22725a697ad142dcc034ff75741c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php' => array ( 'fileHash' => '7eb3db1f46ea4afc4f588377823130419c3491af', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php' => array ( 'fileHash' => '674cc26d858a8763f0cb327701b21d71327d271a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/LoadBalancingStrategy.php' => array ( 'fileHash' => 'db948cf8b3fb706c954911034deee820702a71ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/PoolConfig.php' => array ( 'fileHash' => '4a80d052f2c78f7c5f307d0e78e74f4185b4ece2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php' => array ( 'fileHash' => '22f5c763ea8c68261d6a7eb049b3f6a7c9e15e2e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php' => array ( 'fileHash' => 'db2c468e943811f4bcef6ff27101ae78da9d4e44', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php' => array ( 'fileHash' => 'a878e4f6f850eef53c9f3d54caa2b72017beb208', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php', 5 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php', 6 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php', 7 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php', 8 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/UpdateImageVariantsConstraint.php', 9 => '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Migration.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Transaction.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/Migrations/CreateSigningKeysTable.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php' => array ( 'fileHash' => '4c0f448f4b6b03b87bcd407869ccf57207498875', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php' => array ( 'fileHash' => '6374fbe12bb1db999a901b0697627f717dbf2d52', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Contracts/AsyncCapable.php' => array ( 'fileHash' => '8bba969786b3f8b5a34e818ae02a0ba1ed9609c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php' => array ( 'fileHash' => 'c0c4e1faac8f0272e7b68d24748c0e132ed3afa4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php' => array ( 'fileHash' => 'ad4857151e64bdf092d6aaffafab723937fb2b49', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criterion.php' => array ( 'fileHash' => '3758254e0edf6555c1083ea1facfea83ee8af406', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php' => array ( 'fileHash' => '5fa88e73c8ecd22df8bae4208fc98967b1c083ab', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php' => array ( 'fileHash' => 'e28c95585fe45254b4b68b934b75e8bc2fb78a94', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php' => array ( 'fileHash' => '250062c014d064b1e35a20bf8fb7cba562571471', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php' => array ( 'fileHash' => '09813846967a917bef70472181cb7969b0989111', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php' => array ( 'fileHash' => '4124ab54cfd81162c345171f3391296a4b545095', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php' => array ( 'fileHash' => 'c3001f072286201e34b9fb6579e9a8409df18f93', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php' => array ( 'fileHash' => '5d6c21519cba76199faf3834cfe2c7f7a515b2b5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php' => array ( 'fileHash' => 'cec08fc1a065847e56126994abb2282de9ba66d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Order.php' => array ( 'fileHash' => '008fbcfe8ae32db97e8a58493a65eb6d47b9ffbc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection.php' => array ( 'fileHash' => '4dee4d6b9e05bbc63983b24e0152b8db4b4eb488', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php' => array ( 'fileHash' => '4ffc2ad49d4ed0725a133c658c3847ceaffd0980', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php' => array ( 'fileHash' => 'cd9b8be7b6c0e01a2b074be4658c43159ee8f50e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php' => array ( 'fileHash' => '5a7b085541817e59f6708fcbc7b8d74242e999cc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php' => array ( 'fileHash' => '4edcb1754bbac642abf59f27888c23d520b3a474', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php' => array ( 'fileHash' => 'd645f5f656815952506d0c1acdfeeca0fd6a8430', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php' => array ( 'fileHash' => '889fd7d9504a1f83baea928d8eab5ce9a08b10e5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php' => array ( 'fileHash' => '29b4fe367e4a5f8a3df39e233bce742f5d2e05cf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Driver.php' => array ( 'fileHash' => '4e90c9849d0f8ce1d42b921e4603b7d9063e7efe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php' => array ( 'fileHash' => '3763c21246470ab72b809a61b5de77801f36d5f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Driver.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverType.php' => array ( 'fileHash' => 'ea90a56ac3047157f624ef4a912589d27d3d470f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php' => array ( 'fileHash' => 'e4025d4f662636fc7f77c5aac33d6e37edcdaa91', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/DatabaseOptimizer.php' => array ( 'fileHash' => 'de6e52f35672df051dab65753f788c864c8fa27d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php' => array ( 'fileHash' => 'db6ae1bdab308131fbeed15789ae057cd54b27b3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php' => array ( 'fileHash' => '4785178d2de9f5b4bd583b5dbd2ae7dfca3bbad2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php' => array ( 'fileHash' => 'c2ef67cc795aa7160fd0896da6b104a9601135e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php' => array ( 'fileHash' => '82e7d2d422a250cb04a159ec0aac734288ddf9a6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php' => array ( 'fileHash' => 'c5c089c29f1a4b8f744eb6d832146742e7e0db28', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php' => array ( 'fileHash' => '5a6642af524daf09752f5527b919adc240407d43', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Repository/EntityRepository.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php' => array ( 'fileHash' => '279e92667309a68e88807e6db2fe50ad047391d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Repository/EntityRepository.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php' => array ( 'fileHash' => 'f4bd21c5134231605cda0684afacb3cf042ec2ef', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php' => array ( 'fileHash' => 'e49b53c22fe68b5fe0f2bf0aaea148c742ffe25c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/DomainEventCollector.php' => array ( 'fileHash' => 'd9625b9e6317bef3fbf89cecee071324f45e9a52', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php' => array ( 'fileHash' => 'a391640c3f1e850799358871ebe7a898e8a9aed5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php' => array ( 'fileHash' => 'b5925d0616459f24401d6fd004f78b663a4e19b2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php' => array ( 'fileHash' => '5a3a01d84b4f919e63aa9a15758067b0ca2c1314', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php' => array ( 'fileHash' => '50b53788cc762103110d79dff012d55e91a640c5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php' => array ( 'fileHash' => 'd5bcd4a2073c01c3992482f6fd5792ae334cb732', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php' => array ( 'fileHash' => '3a7d2c485ccabe106c4d7511643e3ba403899e5a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php' => array ( 'fileHash' => 'c36a749b5a14a05da262edf883f17b2d61a2f3c4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/ExampleUser.php' => array ( 'fileHash' => '576fd4d7958ccc68382f0864c5def06351c2e44a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php' => array ( 'fileHash' => 'b0d144fe8ee66de8a93b665fc6efaf8b76b6869c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php' => array ( 'fileHash' => 'ed051d8986fda9ebc2e0da6fc8e6f44f64725c94', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php' => array ( 'fileHash' => '5ba0ab41bc625b62c4ce549f0ac13e5192224f6f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php' => array ( 'fileHash' => '519a34596130d8db5a4c23bfd8b0a54e08b05f01', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/User.php' => array ( 'fileHash' => 'cce12de9ed3b305887a5fa1a490ff10d6c66b43b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php' => array ( 'fileHash' => 'b896e12960cac67e9e9b8242ef541ee147fc430f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php' => array ( 'fileHash' => '00a425ed99206f189fe03d750b915ae96dfa2bd5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php' => array ( 'fileHash' => 'e95b9a435ebe2393e210f9fe0cff127656488468', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/DatabaseException.php' => array ( 'fileHash' => 'fc89fbcab8dd67b3f9171740118bc169b3da5411', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredFunctionException.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredProcedureException.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php' => array ( 'fileHash' => '8093286a52682b8ec5516a4d9a9f9943716fb197', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php' => array ( 'fileHash' => '65e0c88ee6954ce8b59ba309645c21dda8cc262f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php' => array ( 'fileHash' => '0eaa759111489f12f9d56270b39d5e13e8487da4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php' => array ( 'fileHash' => 'f36b0cc9497ec60ac00da761fcee00e9382c9f4f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php' => array ( 'fileHash' => '16ac43d1da9b0b5da8b61d3dd7811fdb71f64f64', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInitializer.php' => array ( 'fileHash' => 'f31086e56239c034b36b2bcd981c8a65d5c825f9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php' => array ( 'fileHash' => 'a99726a40369a4d56f6e514480a9ded21a540123', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/IdGenerator.php' => array ( 'fileHash' => '8dca1e016f808b99bb31da641d0693615d19da4a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/User.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php' => array ( 'fileHash' => 'd2d3fbfb4d98a50ddda8a448279144f27effdd18', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php' => array ( 'fileHash' => 'f1c1f85cd8703ec8031088dfc0e0116d6150a1e8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php' => array ( 'fileHash' => '25b655c203ee807ee30ac11821ad50c1e1fc3307', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php' => array ( 'fileHash' => '2062a1f84ce4eeadfe10c364f2d85f04945f7b2b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php' => array ( 'fileHash' => '842e0616bc1d9643e88bc698ad20438954892922', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php' => array ( 'fileHash' => '4bd1604b5d2399e2629d03e892b066c89d196e9f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/PropertyMetadata.php' => array ( 'fileHash' => 'ca33a10fd9fc864d5b300c059a042fe1105a8928', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php' => array ( 'fileHash' => 'a87ec1050edf2b1659eb2c0ec4275c4780a2d001', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php' => array ( 'fileHash' => '4bb41f58ba72de15ae12f521b4554fdcd3996dc8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php' => array ( 'fileHash' => 'ae55b17885d0a99f9151b501b422a6bb092ba032', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php' => array ( 'fileHash' => '940baa1c94e44eebd90788fb48c0e11c36eb8630', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryMiddleware.php' => array ( 'fileHash' => '0b8d52f61a52ece4bbbcd3509ca8b5668d84a883', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php' => array ( 'fileHash' => 'ee300b25928c0c5a95a9c476c69dc07973249e64', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php' => array ( 'fileHash' => 'f9957dc33074f5b68b566e23567183cf6e3c3db9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php' => array ( 'fileHash' => '9490c175de6ede5fe5000f6eb07f3e827ce4cc8f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php' => array ( 'fileHash' => 'f7859f79dadaa3c9be77b4719d4b342ba3def7ab', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php' => array ( 'fileHash' => '1f0731ecdccaaffa139b68935fa8766149546ffb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationCommand.php' => array ( 'fileHash' => '98a932fd66ac66ad969524e9b4a3daff0df73f32', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php' => array ( 'fileHash' => 'f84df55cca59bcc5bb7039988514ed23cdf9ea97', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/DependentMigration.php' => array ( 'fileHash' => 'e46b72efea8ef3e7adedb6890be88f2a7542fff8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Migration.php' => array ( 'fileHash' => '42ccb7c5e6d8f3f7ce5674b7ccc6de6cc842990f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php', 5 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php', 6 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/UpdateImageVariantsConstraint.php', 7 => '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/DependentMigration.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/Migrations/CreateSigningKeysTable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php' => array ( 'fileHash' => '39df32dce58f43471cea136bd2ea81e1a71263c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php' => array ( 'fileHash' => 'e77e9ed2b5938e707c7f791667999a91f59036af', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php' => array ( 'fileHash' => 'ce798cd289c70c968b9073732b2d0acffd47aac7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php' => array ( 'fileHash' => '00a38cb25bc0d15e265909ce8f455baba90e4695', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php' => array ( 'fileHash' => '6d14e3649824c68d98893cd1b09fb52b66294837', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatus.php' => array ( 'fileHash' => 'c341a6e1573bac525f9e3c3cfceb9514101cf07e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatusCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatusCollection.php' => array ( 'fileHash' => 'b6832b6b448c6ca3dcda595ebd7c955ee5e67b49', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersion.php' => array ( 'fileHash' => 'cb431ac0f79745349b804906453548c9bdc760ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php', 4 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php', 5 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php', 6 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/UpdateImageVariantsConstraint.php', 7 => '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/DependentMigration.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Migration.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatus.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/Migrations/CreateSigningKeysTable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php' => array ( 'fileHash' => '13cdc33db053f194f6a66a281ab2f444f3b04d73', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/DependentMigration.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php' => array ( 'fileHash' => 'f1eb7a66c4f7da47d3498a059a22fdc7fb7478c8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/LogQueryStatisticsCommand.php' => array ( 'fileHash' => '6bcbe843eceb363a74e1a4d6affa53b474c20da7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php' => array ( 'fileHash' => '4e6046faf3d11422d97154a8d6b8bb6b3481cdbb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php' => array ( 'fileHash' => 'd2742f74af1ad230f744b1e95ac30f400794801a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php' => array ( 'fileHash' => 'ca2120e05f5ba955d277fb028766318102d99a2f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php' => array ( 'fileHash' => '97a964fbe90667cb81e56fdccad999610994c53e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php' => array ( 'fileHash' => '99db7f3f610746bbc740d6df7451aaa9ff576ba8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckStatus.php' => array ( 'fileHash' => 'c1481ced34aed6ea694a7c5c65327ae404fd3b1f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php' => array ( 'fileHash' => 'f7dcfaf8ecdb6ab0f7d034e1d3b8396d5aea3255', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/LogQueryStatisticsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php' => array ( 'fileHash' => 'd61ca6ec44497db77f882f5b4a9f2c6dc09b6730', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php' => array ( 'fileHash' => 'f22415ea8d905ffef2926ac305cc3d13b0204474', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php' => array ( 'fileHash' => '6a78ba2507abb7547651b4c09df2b89ca1523548', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php' => array ( 'fileHash' => '9b0e9f970da3eb5a3b34306d4906396b332e5ea5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php' => array ( 'fileHash' => 'c2c4c37394cf9c579621567bb7f6370105bd0ecb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php' => array ( 'fileHash' => '67362b4530ab15f869a260021ace2f3f0353e293', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php' => array ( 'fileHash' => '1562cec89ece4e5ec2f6155056dd7a1d0a08170f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php' => array ( 'fileHash' => '9f615dfd04189151b6ee6bc7c024b0b5ad45100b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php' => array ( 'fileHash' => 'd46ca13d341a81083b9d8079e6d423031e6ed42d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php' => array ( 'fileHash' => 'db1c99b9a7e286501384b5bec05fcd5b4d8196ef', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php' => array ( 'fileHash' => '8fe241f9416d763fe0e73e2fa0eda9d1f8791c49', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php' => array ( 'fileHash' => '5d45849986cb3997bbe405a63a9ab985ca41077e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php' => array ( 'fileHash' => '9179b55bb4f5ff21258e90d9a1f40fc6df3235b1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php' => array ( 'fileHash' => 'f5af04e3fa014d608fd1cb2c608edf1457b479b9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php' => array ( 'fileHash' => 'aaa53a9fbbecba1370291be3899e4d48b8d935d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php' => array ( 'fileHash' => '511b0d1f01c35d60bc297ef2cf06a870704e2ef1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php' => array ( 'fileHash' => '27e37de78deb13f7a9ff297d9e2912fe8a6b5cc4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php' => array ( 'fileHash' => '9adb4acd169ee7ea7e6ee31ff98bc15e719da68e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlertLevel.php' => array ( 'fileHash' => '713f80eac80326f42e45131917d47293baf6ac5a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php' => array ( 'fileHash' => '97ec008ffdecf7cb3ff7db2c313e953ebbc9851d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php' => array ( 'fileHash' => '03c5c1c38cad60ac3f72c6258597848b60d086f4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPatternType.php' => array ( 'fileHash' => '2e23576d89017858d402f63a905c6ea6468f8d26', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php' => array ( 'fileHash' => '32777b103b99b146c96065201825a337535a55f1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilder.php' => array ( 'fileHash' => '5772d7b4099aac48d84f1d0f56395a7083b67197', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php' => array ( 'fileHash' => 'ad78e20f32d2f509c7399b7f406b7c577a750db8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php' => array ( 'fileHash' => '867d7c381f21ce59b9e50f5ecf350f3b0e2268a3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php' => array ( 'fileHash' => '50ea46965492385ca1f957cc5769d6b96344f422', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php' => array ( 'fileHash' => 'de57dc53834444e57cfeee1c2a8532935edf6a64', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php' => array ( 'fileHash' => 'b7ef6435352258a6806841a9aed318598f5f151f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php' => array ( 'fileHash' => '89935fa2cba6082b7e204442d11b930fd2c13419', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Repository/EntityRepository.php' => array ( 'fileHash' => '952fc6c71e2e4223a09f577f3ce9d9902a256142', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php' => array ( 'fileHash' => 'c0007cbbfb3b562169f56f89c55fb2553f1f3b22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php', 3 => '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/Migrations/CreateSigningKeysTable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php' => array ( 'fileHash' => 'fbdf4b36b190dafabe8eba82ae7cb3fe7a39ef92', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/AlterTableCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/CreateTableCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php' => array ( 'fileHash' => 'b949187cbe368470bb77ac28c2b897d74b6edd18', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/AlterTableCommand.php' => array ( 'fileHash' => '12880015514f4c9fee7e43b89e60d8b42bf5fd38', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/CreateTableCommand.php' => array ( 'fileHash' => '5d3b8900a2bfdc7f08ae2e300221aae9b8e136d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php' => array ( 'fileHash' => '879b23acc3abe7a4b98104f7152b62d8340cc37f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php' => array ( 'fileHash' => 'd58e9ded9d09c0ae3e9678b9732caf91acd048cf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php' => array ( 'fileHash' => '206f942498aa222663f1e69bfa253bb165c4d900', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropTableCommand.php' => array ( 'fileHash' => '65f0b64e0101e15ef38c73cc9bdd8fce50d03a2d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RawCommand.php' => array ( 'fileHash' => '10058e1f39c1155e2ed0b5632c0042fdb1c4d79a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RenameColumnCommand.php' => array ( 'fileHash' => '72f6e97797648f228d71ca544b27b82c284df3dd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RenameTableCommand.php' => array ( 'fileHash' => '7348a30deb6bdf068c5d07bcc4a8b1146f8f5a11', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaCommand.php' => array ( 'fileHash' => 'a665143aa44f2305cb1176b418e04d20f5d49b17', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php' => array ( 'fileHash' => 'fb574bee3068cc844150d9377baeb1bb306da9cb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php' => array ( 'fileHash' => '54a7943bec1dff5d75b318049b707d107104711b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php' => array ( 'fileHash' => '9575aa9420a76953bfa42251e6df5cc9ff06697c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaDifference.php' => array ( 'fileHash' => '36f753bd8e8f6c3c671ef76d294844ee57cf76fb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/TableDifference.php' => array ( 'fileHash' => 'ccfb9bdca505c6226cf9fd11781e48450f161f12', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaDifference.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyAction.php' => array ( 'fileHash' => '7f79ccbbfe7378a149e3513badfd903985c4e60e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php' => array ( 'fileHash' => 'a0bbaa9d0bf4ff421119c9105eb549fa87ed9824', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexDefinition.php' => array ( 'fileHash' => '75fcc607b447e490c9d62428a13a4ff65842cd0f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/MySQLIndex.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/PostgreSQLIndex.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/SQLiteIndex.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php' => array ( 'fileHash' => '4a9e10c3e6c4134a9ed425e90c9cbf8d827bcef2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexDefinition.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/MySQLIndex.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/PostgreSQLIndex.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/SQLiteIndex.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php' => array ( 'fileHash' => '7b38e527de4a49290968a36f851dfc2c6300dbe8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php' => array ( 'fileHash' => 'b56cab666ed13072bd3ebdec4b0e0651f1dcb85e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/MySQLIndex.php' => array ( 'fileHash' => '3458fdae34186d9dfa20b66f291b28a9da3d8a10', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/PostgreSQLIndex.php' => array ( 'fileHash' => '6af544cba73429161395d4f8dd32f630c45ce78f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/SQLiteIndex.php' => array ( 'fileHash' => 'fefd4826e9ef85be0548a506c3209dd459e9651c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php' => array ( 'fileHash' => '7aa9b75b5d0721bfc192660b30ddf8f6026cdfcc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexType.php' => array ( 'fileHash' => '5353ed717494847d7c22edda88b3b212b4ca2a49', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php' => array ( 'fileHash' => 'fe55afdd3f6477c504e343b57d79b11b11fab2c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php' => array ( 'fileHash' => '6f7b7ef188c0db1f5e22512ab063101cb9e1bcb2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php' => array ( 'fileHash' => '501d1b07a2e136b512b1a64e76c5fb0f4c8bd11c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php' => array ( 'fileHash' => '83a94f7a45bd04a91fd2fc99a4007077608b08c4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php', 2 => '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SchemaCompiler.php' => array ( 'fileHash' => '13ca5073c6f59e27a4e97dd6c618b2ab64f775da', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php' => array ( 'fileHash' => 'b823bc8ae4202f06a2dde0d81579b667d9299d90', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/SerializationException.php' => array ( 'fileHash' => '0eca1be8395d5b010f0d77f30300eea336b9845a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/SimpleIdGenerator.php' => array ( 'fileHash' => '77a988cd06fd46d756f7011b830f0b0eeb164f89', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredFunctionException.php' => array ( 'fileHash' => '43cd0eab426c989ada755f0f0c63608057ac9f64', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredProcedureException.php' => array ( 'fileHash' => 'fe1e9044d652f175a4662e9873a47385fe11b92a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php' => array ( 'fileHash' => 'd025086ea6b6ceb614ef72e6635b0bb0a46a2992', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureDefinition.php' => array ( 'fileHash' => '3326372673bfb4c323a8c09336f562564527b1c9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php' => array ( 'fileHash' => 'a819d339e1f84cf9978323ff49db7fdb07cce20f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php' => array ( 'fileHash' => '7ddf208ae7740245efe24f7aa3d2d0b44466c1b8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Transaction.php' => array ( 'fileHash' => 'c82ef7f5bcc5856fb9bc11ee7e5e6453172561f1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php' => array ( 'fileHash' => '4c1df61aefae07562950014cbf80f966019afeaf', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php' => array ( 'fileHash' => '633b0e9042cca2e5f00ba0a95251f47a05bd5826', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php' => array ( 'fileHash' => '18a317fea039a71358b30f50d50f067b09188ddf', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php' => array ( 'fileHash' => 'd050756005f2762a5bd2d0efcb0a176211bf09c1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php' => array ( 'fileHash' => 'fcd5b13cbb195949c4f0e1d9cb380ff931ba49d9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php' => array ( 'fileHash' => 'a85f27ecff97fd64dd465d69b34f52371e7d85d6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php' => array ( 'fileHash' => 'de20ff02e5c097425add731f573747422023ab63', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php' => array ( 'fileHash' => '164f1a7297ae7616effca87da39b24395929d5ba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/EntityState.php' => array ( 'fileHash' => '6bbe1a56f732ee09af7294ed54677f11f277f4fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php' => array ( 'fileHash' => '9039c32f349914b39bde16e62816b878a1276254', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php' => array ( 'fileHash' => 'bea524aa83dc044a7fc2034a487520bf0b228d0e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Clock.php' => array ( 'fileHash' => '1c4c337f3a734cc973ceddc89fe97ea6ab775d86', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/MemoryAwareCacheStrategy.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenData.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidGenerator.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 106 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 107 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 108 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 109 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 110 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 111 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 112 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 113 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 114 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 115 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 116 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php', 117 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 118 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', 119 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php' => array ( 'fileHash' => '41d17e47d5e45dfc1560c4b9c5d5b352a0a4bcea', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php' => array ( 'fileHash' => '8c32e6b421b242f73a9a4e2debdcbb5d7406013f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTime.php' => array ( 'fileHash' => 'df61d66e7e3898c3e2d6eda582c5c60658ca6bab', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/DateFormat.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTimeFormatter.php' => array ( 'fileHash' => '9aadb87811792845e45268f13106fc173d1c6b8c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidDateTimeException.php' => array ( 'fileHash' => 'cf00b36a8af6ffc3aa68341d0f98461c6233d167', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Clock.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTime.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/DateFormat.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidTimezoneException.php' => array ( 'fileHash' => '1b9e6169793cf3fec11069cfbabb8c7c846dc524', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Clock.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTime.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php' => array ( 'fileHash' => '218a96f35298a600e49ae5d20b02a65f8a53ab05', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClock.php' => array ( 'fileHash' => 'ebd32c80704633debf9598d62110b00d0c96467f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/ConstantTimeExecutor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClockInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemHighResolutionClock.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClockInitializer.php' => array ( 'fileHash' => '223ae92341715d87d5dfda9df67db6cfaae205cb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php' => array ( 'fileHash' => '36519f5963ece0794f0cedc9761624ddf567c869', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemHighResolutionClock.php' => array ( 'fileHash' => 'e4751874daa6db3eaae559f0992afc43b237222c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClockInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemTimer.php' => array ( 'fileHash' => 'b3eb16b2961ff5159db69b6efb448f13986b532c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Timer.php' => array ( 'fileHash' => '6a02b8dae1d4049d9f5dfab04560528faed4f145', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/ConstantTimeExecutor.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemTimer.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Timezone.php' => array ( 'fileHash' => 'f661b94a3e9eb5c4f05dbaadbbafc241476951d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/AppConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php' => array ( 'fileHash' => '9014bb4c6bfc2bc11c097b58ab1aaf0bbad4304a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugRegistry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/FormatterInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/OutputInterface.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/ConsoleOutput.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/HtmlOutput.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugRegistry.php' => array ( 'fileHash' => 'ad983a560728abfa76a3a730c2b0eab2598e8b5b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php' => array ( 'fileHash' => '29486e9203fc964e8ed2a1df738edeb7f93e207f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php' => array ( 'fileHash' => '06fa6d6a6dec9e171549a6423829b15c5ed55fc8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/helpers.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/EntryType.php' => array ( 'fileHash' => 'e1cba462088ae216ff427e66f765e902fff516d8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php' => array ( 'fileHash' => '1b4141fa8473bf2076acf46ac284817449af8937', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/FormatterInterface.php' => array ( 'fileHash' => '328ea672c8629cf297601912a0281e7dd5422d63', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/OutputInterface.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/ConsoleOutput.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/HtmlOutput.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php' => array ( 'fileHash' => 'bbaeb170c7724db6134bbf9f07b95d20cd446d26', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/OutputInterface.php' => array ( 'fileHash' => '2bc03505f032c3ea9c167058d2b43ee41ca32178', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/ConsoleOutput.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/HtmlOutput.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/ConsoleOutput.php' => array ( 'fileHash' => 'c2161b193218afbc140163017369a2fb896bbd73', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/HtmlOutput.php' => array ( 'fileHash' => '617eca42b74c5a14ca7a468d44ee2736754fad22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/helpers.php' => array ( 'fileHash' => 'f0b5d7397bc34918c2f9a6e0ebc90066f7aad605', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Images.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php' => array ( 'fileHash' => 'da1ebf2eb64a36166dff6633036ef4dfeab7c9db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php' => array ( 'fileHash' => 'da38b90bd6642d985f5ea421d84437ccc68ea044', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php' => array ( 'fileHash' => '10d5ca31f5deaab5f1d73ac9514a55337de756d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php' => array ( 'fileHash' => '0d0c68f6aa81f23aea8398cba571919430533fc0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php' => array ( 'fileHash' => 'd578aa4c564854eca811cca79b788bbe0f6dc83f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php' => array ( 'fileHash' => '1447fe374eaa45577f4652cde8713d51e0443991', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php' => array ( 'fileHash' => 'a41fa3a8fa673c9e3df8f82a20f7ff715b43fe3f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php' => array ( 'fileHash' => '1212f7a2aae1248e5022995574082f7b8cd88292', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php' => array ( 'fileHash' => 'd58fa04a57eac38e3025ddba86a0206f7f7049da', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php' => array ( 'fileHash' => 'd6c3a371cc02cbc3ef32b6848da15362eb532b15', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/Component.php' => array ( 'fileHash' => '7554a4acdba59ae3d502263d62b59a915c192cc6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentCategory.php' => array ( 'fileHash' => '84b175a3577858b33ad3bdd585cd1e4f59537057', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/Component.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentPattern.php' => array ( 'fileHash' => '0c54fa49d19458599cf782266389c39c59e650bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/Component.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php' => array ( 'fileHash' => 'ea6526b50910dcdc0a2a93060fbde9f3c1fd36cd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentState.php' => array ( 'fileHash' => '3ea9254f7ec9376f5c13aae71a798f98b4b7fbc2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/Component.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php' => array ( 'fileHash' => '8d4d41dc4b7bf32bbfab26486cfb72cb4216f6c6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php' => array ( 'fileHash' => '4bf68821bbf0c1b07c4e61043ec0c2e9c1176907', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php' => array ( 'fileHash' => 'a4281833b79f114dbb754d122ec05fcddbf9ffc9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php' => array ( 'fileHash' => 'e67874da4897d701dcc3d62cdc9ee8b406da7302', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php' => array ( 'fileHash' => 'ba4a4201808d028fc3a0713510b35ee178c980a8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php' => array ( 'fileHash' => '4e790e69750553ca7defdb459459346352bd6454', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php' => array ( 'fileHash' => 'dc9988d5c8a65e9873f443e9ff2c8bf5b9aab687', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php' => array ( 'fileHash' => '9e88db90864d45b447e116f9da6e049d4b2c3348', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php' => array ( 'fileHash' => 'b1620bd0d3fe04b68796699e7d7369bc357c9570', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php' => array ( 'fileHash' => '9e41ec6e0ff82d655eef05a0a7004b182209915f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php' => array ( 'fileHash' => '305f8ebba2e4790762f9d5f1d4299ffcf6775be8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/BemType.php' => array ( 'fileHash' => '68ab4e81ead2a9eda5e3c129bb548309693f7123', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ColorFormat.php' => array ( 'fileHash' => '800c143b889714cccbba925d3c2442bfcaa0c727', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CustomProperty.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php' => array ( 'fileHash' => '17a8ed0272a9e5ef8700a2b12b9b05a95749b5c7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPatternType.php' => array ( 'fileHash' => 'a32127169d8bbd9129024276933e1a5fc478e111', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClass.php' => array ( 'fileHash' => '70cfe0ceebac68afc942f4e9b7eb20b3ce52adef', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClassName.php' => array ( 'fileHash' => '420527098ee07163c0d7c3d193c50891178ba594', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php' => array ( 'fileHash' => 'fd69abc3cc5a5811b08bd0bf58fb0d9d4b4b988e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CustomProperty.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php' => array ( 'fileHash' => '27f772f27e4c5e51c10b842f78d231d3982226cb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php' => array ( 'fileHash' => 'c04603c09da5e6c285f407b730c652763fa29103', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssPropertyCategory.php' => array ( 'fileHash' => 'b2cbbbcb961fb76c1172af9113379380209398ee', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php' => array ( 'fileHash' => 'b96b7715c4a7a674b668d8afc7e5bd01be0cccc0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php' => array ( 'fileHash' => '32738c8dac2b79aad06a6529e132da64f285cb38', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelectorType.php' => array ( 'fileHash' => '7272d7d5b183956aacb979ff80e95cb6e0c87c3b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CustomProperty.php' => array ( 'fileHash' => 'd70e25646ea84c4c8b57eefcea56ad5d05f7f85d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php' => array ( 'fileHash' => 'ba00bcda4fb332bcd43dfdcdf4daa5cf71ece434', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php' => array ( 'fileHash' => '806176c356acaf8ca05c000756144609c8ea7949', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignTokenType.php' => array ( 'fileHash' => 'd7c0142056e4ecb55ed61f422e07b87314d1496b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/TokenCategory.php' => array ( 'fileHash' => 'f2f18c775d7d0e53836d1cfcef92a3f6d2eec08e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/DiscoveryCacheIdentifiers.php' => array ( 'fileHash' => '35fe7f7e3f3999efbcfafaf4af21ff421b063a3e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php' => array ( 'fileHash' => '358f267b2513c806a0d9e97dbd1c62aab4ecb076', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php' => array ( 'fileHash' => 'c0e0e3c845ba95e0501be1483c207518c0904817', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryPlugin.php' => array ( 'fileHash' => '880f19a8c8012d0444a715c3e86d8ccf247b6fe1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php' => array ( 'fileHash' => 'd98e1e3667d9b0c4b2327e9b75b095dd810c7845', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryVisitor.php' => array ( 'fileHash' => '5032fd15cffa46f62df254c6f61a3d0d042a02d6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryPlugin.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php' => array ( 'fileHash' => 'f3f67367e9c095c33f5920c50240afa107371bca', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php' => array ( 'fileHash' => '8ce4366875aca1dd7bb4b5e60ab5f24c88605e9e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php' => array ( 'fileHash' => 'f1d2ab658e4dbd1ba4b24e52aa91247c07222bc5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheEvictionEvent.php' => array ( 'fileHash' => 'f7293e9993c809e8c90d154e35783539877aea69', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php' => array ( 'fileHash' => '6aa0fa2a6c316d2db030c158a8e81c131aa9c885', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php' => array ( 'fileHash' => '233433996ec8953097ea285d85d43918a3166f83', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkEventType.php' => array ( 'fileHash' => '5cef81fd2c3652fb52d204296fedc613e90d9e37', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php' => array ( 'fileHash' => '39341796f95333b7b3df620fe2f20b1e5359e545', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php' => array ( 'fileHash' => '4d02ff7c701481bcd2ba7bc6c7a8c692c8ecfc8e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php' => array ( 'fileHash' => '0ee3d7e9ba3ea205f34768035abc58e5665895e0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php' => array ( 'fileHash' => '5573b5f510d6c89aa2264f15568460602812e619', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php' => array ( 'fileHash' => '23b27c2c838a72ba39dffaedd2bd0415833db12f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php' => array ( 'fileHash' => '8e28a8c99f3f916b9ed4365839f3d412035c6a3f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php' => array ( 'fileHash' => '0bb4d59b9c88196f3f9c0c5c68a736c9cd4b654d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php' => array ( 'fileHash' => '77a75fa85b1d4dabb636924981226dff91818312', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php' => array ( 'fileHash' => '973fefce90b461f5930bd23656ef3fa415500644', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php' => array ( 'fileHash' => 'af4d7f9540b2bd1a57dfc9329638758862bc8c02', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php' => array ( 'fileHash' => '36fb8558bddf754bc0e12ca5bf7c1637d5fba448', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php' => array ( 'fileHash' => '8fe6c6629387525d3515109c40a4182bc90d21b2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/RecoverableDiscoveryException.php' => array ( 'fileHash' => '17a138055998f69c41a39b958d58ffebea83699f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php' => array ( 'fileHash' => '66c35b5f6b8b63963802905a0a349de54f8c3325', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileContentVisitor.php' => array ( 'fileHash' => 'd00dd6ee58958f44663f4779e63c2da02977e520', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php' => array ( 'fileHash' => '966c9bcbad42ed2eca64f50b66fd2442bece9689', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php' => array ( 'fileHash' => 'dadf2c3041868481474acb9593260ef5a704d30b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php' => array ( 'fileHash' => 'b8eb52cf7c462983aec28a9ceb8aaae27438d873', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/CacheableDiscoveryVisitor.php' => array ( 'fileHash' => 'ef5f4f644b0fdf1b291168ec18d7e489d331485c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/ClassDiscoveryVisitor.php' => array ( 'fileHash' => '5f4678cd4f90d3cca467996120038bec9b6c22ef', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/DiscoveryVisitor.php' => array ( 'fileHash' => '7dc3f0e006663dec2ece6bb0da1cf3ad9a6e0765', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/FileDiscoveryVisitor.php' => array ( 'fileHash' => '0ebf320108716cd898104a03fedb85d4b151e8bd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/LifecycleAwareVisitor.php' => array ( 'fileHash' => '738572ce4717142513caf011523ea2fc3464e63e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php' => array ( 'fileHash' => 'dcfdd48e79ec1a62f957f1502842fafe76e78536', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php' => array ( 'fileHash' => '918495396dffe634b57f94a53438b82d805cb834', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardAction.php' => array ( 'fileHash' => 'dc77b8074c8211693243e31e03dacc57c0c7769f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php' => array ( 'fileHash' => '712d998b5adcb798586af9a2ab20c7fca6314060', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php' => array ( 'fileHash' => 'd29cd7c87af2bbf45340ee0666f262c71974d1e3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/LeakSeverity.php' => array ( 'fileHash' => 'a1c09ecbb2c97580b2d3a3ef5ae40972f4789683', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryCleanupResult.php' => array ( 'fileHash' => '35f520015cb5b5e069bf08221b3431cedd5bea95', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php' => array ( 'fileHash' => '5192b25aa27233c792d7c0352a9d67a134515aa9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php' => array ( 'fileHash' => '8ef52cbfadb859e281f8b23f2471426349f4b4a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatus.php' => array ( 'fileHash' => '7bb2b8128462e979d67833b68993159764719525', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php' => array ( 'fileHash' => 'd16358f556ed9aba26195e72a149ad8f370ea908', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php' => array ( 'fileHash' => '54dbc27e1442b5d6ca119d4ab5bac1dbbdc4f614', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php' => array ( 'fileHash' => '3f0ba6a93dc3138629eb5e5a15bca884f3fbf929', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php' => array ( 'fileHash' => '331fafe30b2701681f37febcca986c1173d18450', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php' => array ( 'fileHash' => 'df6f346ee4f56632602f7b943a7233cf9f22db8a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php' => array ( 'fileHash' => '434b9279623096efac282e24e3a091bba8d7ed46', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php' => array ( 'fileHash' => 'c1ce75a0a7a36cac5f95649fc47940d706a7b59e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php' => array ( 'fileHash' => '7fc2a45417cfd561139c317a979f1d7c5a31e34d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php' => array ( 'fileHash' => '74c50cd8d957df7a4f4889d4089d2ffdb3e6bfec', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php' => array ( 'fileHash' => '8a4490eb56b0b0b20e75425f80e950eee2c25ef4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php' => array ( 'fileHash' => '94fa57eba7e4ef0f46c5dad1d0c00956343582f6', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php' => array ( 'fileHash' => 'dab687b28a218a069c0724f730a619b3d5613a12', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php' => array ( 'fileHash' => 'a3d4bf7a8e0d7e7e568d0b1c08f6b963b4640f3a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php' => array ( 'fileHash' => '986f0820edd1ded8f65ec7d56e51def9bb6b9dea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php' => array ( 'fileHash' => 'b58acb1b3073129d3c6db51ff4fa10a8eab31862', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php' => array ( 'fileHash' => '7621f752d01ae8b7abff08b35d6bdde0b61865ac', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ReflectionAwareVisitor.php' => array ( 'fileHash' => 'b02b74ee9cb03bacb9f0323b92d46bdd7abf66b3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php' => array ( 'fileHash' => 'cae3e79fe5c0c8d0d926c04b3e74afac32292a7e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php' => array ( 'fileHash' => '08620f0dd5533c39907ef767b5f5a27006587b6f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php' => array ( 'fileHash' => '447156b92464c4480f2f241a2ee89eb48ab9879e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php' => array ( 'fileHash' => '5ddb0e0ab9cdf3913e0c7419e6da4d37958e18b6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryPlugin.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php' => array ( 'fileHash' => '1734e6600653c64b5de7e3ab70e71328340acf8f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php' => array ( 'fileHash' => '2dcaf499ad0e0a6e79b2ab21afc20854d3b11dcd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php' => array ( 'fileHash' => '435e8643ada7c6976b8dd83d1a832b76c9c39622', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php' => array ( 'fileHash' => '586e44e84872e64cafb4bbb6f2586a5cb400af12', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php' => array ( 'fileHash' => '7b4235726674e675241506b52397a9bad831bba9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php' => array ( 'fileHash' => '92422d7d24ba64e2fbddd49fbf5917de010e4ad1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php' => array ( 'fileHash' => 'db6ccc3033623e2467344ae278374126ecba00ba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php' => array ( 'fileHash' => 'a9adff9dde52dbe4a73f1b8749947da557022db5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeTarget.php' => array ( 'fileHash' => '4c9d49615288ca6bfd0b00854725d44809f01910', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php' => array ( 'fileHash' => 'bc934dc9aec7a9359117744f9e5927ae266d7734', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheEvictionEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php' => array ( 'fileHash' => 'a710de3632e740b3b948c8a252cec3fa366a1e84', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php' => array ( 'fileHash' => '1914739032cda2097dec8b1326fb34c0177c7066', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CompressionLevel.php' => array ( 'fileHash' => '6cee9c291f013b7c0245a2af39ec5af374a2c4d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php' => array ( 'fileHash' => 'd8486bad534a1df874d2335c7c56a5e06238d473', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryConfiguration.php' => array ( 'fileHash' => 'eafd08adf7d8980ae59b8914876caedab0485766', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php' => array ( 'fileHash' => '520b5088ce877c612693991e0708d37431284a56', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryPlugin.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php' => array ( 'fileHash' => '460eb8417d39af3c85e2212dd503a7a22a9db790', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php' => array ( 'fileHash' => '5084c603b5effefd1a88abe7fe60f980eff786e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/InterfaceMapping.php' => array ( 'fileHash' => '6b384c24229f0e6686fc7a01b001b00997d2e300', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php' => array ( 'fileHash' => '62ebe9bc4eae71dde876d6dda2890116c6155da7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryStrategy.php' => array ( 'fileHash' => 'a2da6d562170c3881d7a234ad3835431b76df3ca', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ReflectionContext.php' => array ( 'fileHash' => 'c1ada5f015b1251b8089738c07c76265c554954e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanStrategy.php' => array ( 'fileHash' => 'f30640aefdc88eee553eb3e92d25d4f0125f1960', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanType.php' => array ( 'fileHash' => '4a860a942e66ee35cbee9a51ea85cc03ba779988', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/DiscoveryCacheIdentifiers.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php' => array ( 'fileHash' => '6a72cf5414120f584a56760dbf23a8a596aa10db', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php' => array ( 'fileHash' => '4c1f94d80ff329daa99561f1d7607d1414496e29', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php' => array ( 'fileHash' => '44fbcdc6cb83a6ef095eea2375b3c4bbd1bd5747', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php' => array ( 'fileHash' => '1b2bd777da98e942747d96c82ae56cfd63e3879b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php' => array ( 'fileHash' => '04167e1daad905a18937b4c76e7b72b5fdfc02af', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailInterface.php' => array ( 'fileHash' => 'c6ff7015e3cd7617d97c2b7e3a13615552ded0bf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php' => array ( 'fileHash' => '8cfc517bf9783740e3e062609374d35a5c873315', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php' => array ( 'fileHash' => '0dd1a6a9f8180e50aa37b8daf2c976fbc02bfeea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php' => array ( 'fileHash' => '50a419abf000b481cda148e150ff6dfb34425d03', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php' => array ( 'fileHash' => '8d46e24a62cb5c1ad638e55c44279f7a7bf206bb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/ValueObjects/EmailContent.php' => array ( 'fileHash' => '17d9ab6385a492d6579faa168e97b29925ca3bac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/ValueObjects/EmailSubject.php' => array ( 'fileHash' => 'fcddb60f71429d13cfe80782bd3d967cbc9a9fcf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Email/ValueObjects/EmailContent.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php' => array ( 'fileHash' => 'd7c4de27a3d1648e52a8491eed4277bc542b1733', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php' => array ( 'fileHash' => '16479072a9975fb04779dde6ad297cc138066ec4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php' => array ( 'fileHash' => '598c6b49beddf90e40d6d47688a61cc81bcbfb3b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionInterface.php' => array ( 'fileHash' => '6ebc930737ff76fb02180e446affb03943b84530', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Encryption/HmacService.php' => array ( 'fileHash' => '8ee711408464de96e8003fe1c530b344bab4b34c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/AlertUrgency.php' => array ( 'fileHash' => 'b81972ab39c47051c95619210b094c16fd9a4635', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php' => array ( 'fileHash' => '26e088d966b5f34c94882fb52e79f8084dcd44fa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php' => array ( 'fileHash' => '680e19a917dad5cec93914c386c822fd40b52642', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php' => array ( 'fileHash' => '9b9ab0d44ad8a8dfe08ee7c48b9446ce47b78fa6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/AlertCommand.php' => array ( 'fileHash' => '56b95e6799ab765f3f045f4213238033ff906053', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php' => array ( 'fileHash' => 'bb5e27293a6f482d464f1a33a7d9861d3118ecbc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php' => array ( 'fileHash' => '963d6aaa2b4de81809aaa159eb6859f2f88f1d55', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php' => array ( 'fileHash' => 'f987db5a6c20c44593fb44b7e76f2e1666ffc439', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php' => array ( 'fileHash' => 'a05e217a9a7163045cd0b66e82e11937c4d414de', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php' => array ( 'fileHash' => 'e183fa3774d471a48812ff4c8b107705466bb207', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorPatternsCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php' => array ( 'fileHash' => '068e6569be7bba6697c5ea69afcfc0e0515b8a23', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php' => array ( 'fileHash' => '623c95b652a077aafdcf3846d8eadb914352c34a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertChannel.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorSeverity.php' => array ( 'fileHash' => 'a11971de599cf32c1fd2d74c6b47a2331465a14d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Commands/ErrorAggregationStatsCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_140000_CreateErrorEventsTable.php' => array ( 'fileHash' => '7c885d40d4e8d5d305e2bf69775ebb2572ebfe70', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Migrations/Migration_2024_01_24_141000_CreateErrorPatternsTable.php' => array ( 'fileHash' => 'b376708c5eea14952cfe6d4f6d887c1d24bd3f9f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php' => array ( 'fileHash' => 'a648736b7b762083e55e3a4b07a70ef301af9800', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/ErrorStorageInterface.php' => array ( 'fileHash' => '4f97944857548131e7bd642f94634fb42aed90ea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php' => array ( 'fileHash' => '45f63b3a5f2fb021811c97f0308bb30e38d0abaf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBulkResult.php' => array ( 'fileHash' => '473bef181142b63e9aa407cabc9504f4f60ea0a4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php' => array ( 'fileHash' => '7b794d384d0759fdbc14557365780208c55a6e9c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php' => array ( 'fileHash' => '8fa50befec0aea679910c8e25e3fdbb4c9f384f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php' => array ( 'fileHash' => '90b58604eec3bfbc01141ded0026d84ce7bc10f6', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryConfig.php' => array ( 'fileHash' => 'fd2f80046ce3232b06d01d66c248413e276961fd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryFailedException.php' => array ( 'fileHash' => 'bfa1ba6876258b9216d6c0ad8eb1eeb73021f0bd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php' => array ( 'fileHash' => '58e66000bc21bf8c805a31af4168faa1f5270fa2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryTimeoutException.php' => array ( 'fileHash' => '13f7bdbcfc8aa71030fe744988e5e64af84770b5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BulkResult.php' => array ( 'fileHash' => 'bb8c764b9677987614b90e349c16bcd218086461', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php' => array ( 'fileHash' => '84e03bd4dc4a290540e8c5c964ff097f305c04d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php' => array ( 'fileHash' => '969658e593ea56e753a1cb8f049bd3c96bf681d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitState.php' => array ( 'fileHash' => '4424aee65dc53fc44fd132d0055bd2e7f04fcc50', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php' => array ( 'fileHash' => '087e38fa592694cdd43c908fe8a758eec4b9c12a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php' => array ( 'fileHash' => '8a841db86e9c65fae8edfe5818cb403eb833d635', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php' => array ( 'fileHash' => '8ce48b41446737269a4caa7b06ff525146fb41b1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php' => array ( 'fileHash' => 'b2d1240a5647bcc862766677f306c60c7dbe3299', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php' => array ( 'fileHash' => 'edaf7e43ff599dbcd657b3310e0a2f40a3c03236', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php' => array ( 'fileHash' => 'c138c17a8beefba94dd437d5bcddcbc7b52b091b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventInterface.php' => array ( 'fileHash' => 'e7c41c0e1adcf993fec8441162b169e37604472e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerRecovered.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryCircuitBreakerTripped.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php' => array ( 'fileHash' => '2b69e0ebdacc2565510106638ff1cb3e1a11ec0d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionFailed.php' => array ( 'fileHash' => '3743c00504860a89955756c1a09913b6e20294d1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryExecutionSucceeded.php' => array ( 'fileHash' => '9591d1e748b1e7af1f93c76cbcaf077c72b25cc5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryFallbackExecuted.php' => array ( 'fileHash' => '5df5dd22d890ca1b4b69181a14cfd81897a318ef', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryTimeoutOccurred.php' => array ( 'fileHash' => 'c32b1d7859c74eb367aadf7e2bf2a159252c1a4b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryHealthStatus.php' => array ( 'fileHash' => '65c07741931db0aed5572f2edf0374c2940215a6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Metrics/BoundaryMetrics.php' => array ( 'fileHash' => 'b4f39ce9fd2827111dfd2a735c0c73d90c2cd5d1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php' => array ( 'fileHash' => '6f07b7922de1d7a301eeb6a5e61529dc4189adc7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php' => array ( 'fileHash' => 'c475a1d353566ccf2ab2cd933b2cfde471b027ce', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php' => array ( 'fileHash' => 'a024c3603ce10a8f1096a2f14829a0a12a783a32', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php' => array ( 'fileHash' => '400c4cd33737075f178cbdeab59d166597e99fd5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php' => array ( 'fileHash' => 'ca25df6e0029e961640844f7afd59dbb42923322', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php' => array ( 'fileHash' => 'a1d1af5a1912e7816a46e38d46bb78e84a8096fc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/RetryStrategy.php' => array ( 'fileHash' => '0645aeaca8b6f4c316d9617638b767c74c99f24f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryConfig.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Commands/BoundaryCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareConfiguration.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/CliErrorHandler.php' => array ( 'fileHash' => '35a04e4f068b026fe5b810592ce2665800786788', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/DummyTemplateRenderer.php' => array ( 'fileHash' => '777aa7016a4b67ad5e1021a39ff92787a894cc14', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php' => array ( 'fileHash' => '82b465673cd6f877b1686f98ba4e32f8eb72b980', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorViewRendererInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php' => array ( 'fileHash' => '24bb5e6001bb8d57a28922539cefc940b92ce345', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLevel.php' => array ( 'fileHash' => '3778fb20ab02211dfb3452f76874366b1e22c149', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php' => array ( 'fileHash' => '2657125ba5cc278ac8ca7da30b609bdb8074c467', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php' => array ( 'fileHash' => '6a1383df60c565750e9282bd0243c4e1ecbbee57', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php' => array ( 'fileHash' => '68ed5047f41814a78c70a96d6458bfac9799e5bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php' => array ( 'fileHash' => '1e26755fd9de889972e28cbfe1e96fdb23f8ec1f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php' => array ( 'fileHash' => '1ef6654ae906b40199f242003c49df96836920fd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php' => array ( 'fileHash' => 'f7157a5398a8b31a9c7c30c0a82179c96458cbc2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/TraceItem.php' => array ( 'fileHash' => '50312deaf634d08dc3ac4cacbf2df49d5147be95', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/StackTrace.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php' => array ( 'fileHash' => '7a06e92d3ca0e1bd3f19c954a87c62ab581c23ea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php' => array ( 'fileHash' => 'e66ee0a94ca32f2162fde84c0b9903a235d362f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php' => array ( 'fileHash' => 'b25065f96f5b01d2f2c71b261605f4ed7d3c0fac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorViewRendererInterface.php' => array ( 'fileHash' => '63aea2dcd101be64f0053d7d73b2118e979dec40', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/templates/debug.view.php' => array ( 'fileHash' => '566d149271d7359ea53f9de967cd890568f89d83', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/templates/production.view.php' => array ( 'fileHash' => '3bcf4c1c0797ea534db86296e14660477d9a1e79', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php' => array ( 'fileHash' => '9ab8cffd6a5dab7e8dd89f05e21e83912a623e03', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/AnomalySeverity.php' => array ( 'fileHash' => '951c76be72ec622a44ab63286462bb10929674d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/AnomalyType.php' => array ( 'fileHash' => 'd1523eecb5417cfb02d1c16344248779222315aa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorAnomaly.php' => array ( 'fileHash' => '8313678bda71db67154ba8df18b52fd1b0a0c8d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorVelocity.php' => array ( 'fileHash' => '214a5ba09a2cb54b6a97297ce75a89b54195e9f5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/VelocityDirection.php' => array ( 'fileHash' => '4b254c3386adfa7adf491d0a2a21184adf9fe557', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ValueObjects/ErrorVelocity.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php' => array ( 'fileHash' => '16219e0c0c447863d22c2f9c4eba28ae3adc9171', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReport.php' => array ( 'fileHash' => '86cca5b26c14b52ad5c1b9a584b6077ac22e0083', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportCriteria.php' => array ( 'fileHash' => '62963160cf8cd8e29958a5a521bacd280b5f9ba4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php' => array ( 'fileHash' => 'ab06911d14eae7d1e8bbf0a98ec82264fa8f2305', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php' => array ( 'fileHash' => '4d27797554fb185ce155c9e58ff2b7be2cdea188', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php' => array ( 'fileHash' => '1963aaf368fa8abcf545021d190ec9d3377ee9d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorStatistics.php' => array ( 'fileHash' => '1f115f697b9893f32c9d8d7dfa45f47c5c1c95ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Commands/ErrorReportingCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Migrations/Migration_2024_01_25_100000_CreateErrorReportsTable.php' => array ( 'fileHash' => 'a391cd4f6d3cc3453e62b6f5def1a08e9d7b84b4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/RequestContextProcessor.php' => array ( 'fileHash' => '24b7d1076bdc4803754083f1a3bc1b40fec75593', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php' => array ( 'fileHash' => '8afdd872f6b8ebac42bd98ea9e247ed48eda7334', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/RequestContextualReporter.php' => array ( 'fileHash' => '094c4ee03804b18e58a99bddc4bb0f74d6ace7fa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php' => array ( 'fileHash' => '19438cae18f7e43f4324dceb999938c951a051d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/ErrorReportStorageInterface.php' => array ( 'fileHash' => '8628eab82cb75e3719380909498681aaa62cf01b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Analytics/ErrorAnalyticsEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Storage/DatabaseErrorReportStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/UserContextualReporter.php' => array ( 'fileHash' => '6c997b131b37d5b04a0c70d5dbb36d9f5939912e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php' => array ( 'fileHash' => '556340a6ca6627a8d56b5474e5c867c4755fa7b9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBus.php' => array ( 'fileHash' => '91ad19870864276c956faa7f6908333ea5dec6ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEventPublisher.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php' => array ( 'fileHash' => 'fdb9ade64e97f623d4509ca6e292bc67708fe348', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandler.php' => array ( 'fileHash' => 'c66f1e785c5e54c61ce4e1e4e3affdf90fd647a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerCompiler.php' => array ( 'fileHash' => '745b803b6a87120feb4459a58eab96e2fa15a957', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php' => array ( 'fileHash' => '81737ce41263a617795b2aca3c435aeabe18c0e8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventBus/Middleware.php' => array ( 'fileHash' => 'd64f2f9b6f38fa8eac410ef1d2510a05f6b17c50', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateEnvelope.php' => array ( 'fileHash' => '74fd38270084068c29e443ab22613c49efcd9d51', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventStore.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateId.php' => array ( 'fileHash' => '9ad9a62283f96d078c55bff15187a1d4f6dc4aed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateEnvelope.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventStore.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php' => array ( 'fileHash' => 'd98d1c3a58aef9b6cf6a5e8f7c154d65c37f68a7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php' => array ( 'fileHash' => 'f05ceba8466ce305ec556c916c02f9f824b7820d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/DefaultEventRecorder.php' => array ( 'fileHash' => '01090be6de560609b5b1f6887362338427cac154', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/AggregateState.php' => array ( 'fileHash' => '273fc08f2178a0d45b5ba4ac9ef2d287c88203ae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php' => array ( 'fileHash' => '3fbd92ca42b8ed3e65568375c3c768fe93b529b0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateDomainId.php' => array ( 'fileHash' => '87ba26a2e050fe0e145701e7709b6c6b7408d38e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregateEvent.php' => array ( 'fileHash' => '4505bacdf3e09dac74939be49d156f5d4e09cfed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/AggregateState.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php' => array ( 'fileHash' => 'f18a994a270593bee3e6e8575db8da9f6c1a6cd4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventMetadata.php' => array ( 'fileHash' => '158e8be469702e2c452f34533b03ca4b81439b92', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateEnvelope.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventRecorder.php' => array ( 'fileHash' => 'ca07a5c3c83287b674617aa26d3c5f3a1df8a084', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRoot.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/DefaultEventRecorder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoAggregate.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/Demo/DemoTest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/EventStore.php' => array ( 'fileHash' => 'd362d246fc85807f3b751066164a6965101351fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/EventSourcing/AggregateRootRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php' => array ( 'fileHash' => '8827a51235bc3421f49848664797e2a5d5ec2325', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php' => array ( 'fileHash' => '2548da4cae079b6c08a8695333c5b36a819042ae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php' => array ( 'fileHash' => 'fb40e9fc454ee463a092230e4f9af377c2248dab', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php' => array ( 'fileHash' => '78e59252ce560bfefd447a1d5b29dbdd68fa3fb8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php' => array ( 'fileHash' => 'c3bd2016d1ea732794109fba90199165d207686a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php' => array ( 'fileHash' => '3aaaa3d519093356d7d67a47f0c349500c42d7b3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php' => array ( 'fileHash' => '8794d87342c56f57e32812fc6d4d282c6d89ad54', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryCreateException.php' => array ( 'fileHash' => '9f03c02f09b95152d8aacaf91378dbbbee8b0671', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryListException.php' => array ( 'fileHash' => '3a417f2933d94061a0d17f97580b7edf7635219d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorCode.php' => array ( 'fileHash' => 'ab50f0f7b56f034f32419ae50dca720a2c2c6907', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerException.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandList.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchRequest.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionException.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php' => array ( 'fileHash' => 'e333e502b9892bdf88e12024842258cfa61b5ea0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorViewRendererInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/ExceptionContext.php' => array ( 'fileHash' => 'c6a7aed7a56a7cf221b25095144c297dd7050345', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Domain/AI/Exception/AiProviderUnavailableException.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimeoutException.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerException.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Exceptions/NoHandlerFound.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Exceptions/RequiredEnvironmentVariableException.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/InvalidRouteCacheFormatException.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/RouteCacheException.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/LazyLoadingException.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/SerializationException.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredFunctionException.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredProcedureException.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidDateTimeException.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidTimezoneException.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/RecoverableDiscoveryException.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryFailedException.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryTimeoutException.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryCreateException.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryListException.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/DirectoryCreateException.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/DirectoryListException.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileCopyException.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileDeleteException.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileMetadataException.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileNotFoundException.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FilePermissionException.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileReadException.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileWriteException.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exceptions/MiddlewareTimeoutException.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyException.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Exceptions/SmtpException.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionException.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exception/RouteNotFound.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exceptions/ParameterResolutionException.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exceptions/UnknownResultException.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/View/Exceptions/TemplateNotFoundException.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/Exceptions/ViteManifestNotFoundException.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/FrameworkException.php' => array ( 'fileHash' => 'f4f2a706a9241d1ed1c9b0cc70a00673d183f255', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 11 => '/home/michael/dev/michaelschiemer/src/Domain/AI/Exception/AiProviderUnavailableException.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimeoutException.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/DatabaseException.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerException.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Exceptions/NoHandlerFound.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Exceptions/RequiredEnvironmentVariableException.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandList.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/ConsoleException.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/InvalidRouteCacheFormatException.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/RouteCacheException.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/LazyLoadingException.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/DatabaseException.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/SerializationException.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredFunctionException.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredProcedureException.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Clock.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTime.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidDateTimeException.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidTimezoneException.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/RecoverableDiscoveryException.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncBoundaryFailedException.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncCircuitBreakerOpenException.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryFailedException.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryResult.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/BoundaryTimeoutException.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/AccountLockedException.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InsufficientPrivilegesException.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/InvalidCredentialsException.php', 106 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/SessionTimeoutException.php', 107 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Authentication/TokenExpiredException.php', 108 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ConsoleException.php', 109 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DatabaseException.php', 110 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryCreateException.php', 111 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/DirectoryListException.php', 112 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 113 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php', 114 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php', 115 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php', 116 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php', 117 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php', 118 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php', 119 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php', 120 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php', 121 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php', 122 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/DirectoryCreateException.php', 123 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/DirectoryListException.php', 124 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileCopyException.php', 125 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileDeleteException.php', 126 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileMetadataException.php', 127 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileNotFoundException.php', 128 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FilePermissionException.php', 129 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileReadException.php', 130 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileWriteException.php', 131 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 132 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 133 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 134 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', 135 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 136 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchRequest.php', 137 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exception/NotFound.php', 138 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exceptions/MiddlewareTimeoutException.php', 139 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyException.php', 140 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 141 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 142 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 143 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 144 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/Exception/ParserSecurityException.php', 145 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 146 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 147 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 148 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 149 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 150 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 151 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 152 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php', 153 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 154 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 155 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlExecutionFailed.php', 156 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlNotInitialized.php', 157 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/HttpClientException.php', 158 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/RequestValidationException.php', 159 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ResponseValidationException.php', 160 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 161 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 162 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 163 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 164 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 165 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 166 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Exceptions/SmtpException.php', 167 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 168 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php', 169 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnection.php', 170 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionException.php', 171 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php', 172 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 173 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exception/RouteNotFound.php', 174 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exceptions/ParameterResolutionException.php', 175 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exceptions/UnknownResultException.php', 176 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 177 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 178 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', 179 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 180 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 181 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 182 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/DeserializeException.php', 183 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/SerializeException.php', 184 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/SerializerException.php', 185 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 186 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 187 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Serializer.php', 188 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 189 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/DateFormat.php', 190 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 191 => '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php', 192 => '/home/michael/dev/michaelschiemer/src/Framework/View/Exceptions/TemplateNotFoundException.php', 193 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php', 194 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/Exceptions/ViteManifestNotFoundException.php', 195 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', 196 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 197 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 198 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 199 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 200 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 201 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/InvalidContentTypeException.php' => array ( 'fileHash' => 'f5907cc243a9b8783eac514e723c62ed45c40013', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/MalformedJsonException.php' => array ( 'fileHash' => 'e4583d13fc54ae22ae6e405835e94b2b6f2a8e4e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/OversizedRequestException.php' => array ( 'fileHash' => '1c89e7da0811e6c46655b5312b48e24519664030', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RateLimitExceededException.php' => array ( 'fileHash' => '693d404a641c61ddabac0ab5deafd53dfd6f7261', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Http/RouteNotFoundException.php' => array ( 'fileHash' => 'b8e0e29edf6c12f1b3bf9b375f64508d573715b8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php' => array ( 'fileHash' => '8e5dbde692176cda298bfcac9090da4e652b8a01', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/PathTraversalAttemptException.php' => array ( 'fileHash' => 'fd8b37bad09cd851ff23870773c5d67882940bce', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/SqlInjectionAttemptException.php' => array ( 'fileHash' => '9f85215371f861e20290e36da71547bcb6e016f2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/Security/XssAttemptException.php' => array ( 'fileHash' => '246494a559a6c6f101e77ac6280e9a30798b9353', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php' => array ( 'fileHash' => '4ba93197f090429e573e183cf7da1ec43cdcf1b7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php' => array ( 'fileHash' => 'c9472dad7e488c0d080d1e1943d1ab2717f108f3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php' => array ( 'fileHash' => '4fb921e2f033b0cc76a8cc6ad90f6ee66c65c3ca', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php' => array ( 'fileHash' => 'e8c189cfe0d455daf09e6430c7b60bfe686a5785', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php' => array ( 'fileHash' => '11de2b78362be48db7fccb82ec9ee9faeff9645d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php' => array ( 'fileHash' => 'babb22ad95478407af2560376891dd4e9d9a402d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php' => array ( 'fileHash' => 'c69dbce3c306581a11d225331636ce0aa46df116', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php' => array ( 'fileHash' => 'aaee8d531a9ac45c770736d619a31819979f8732', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SecurityEventInterface.php' => array ( 'fileHash' => 'e2941683a781d5ed0d72d45dfc276363e3e89025', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Bridges/SecurityEventBridge.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php' => array ( 'fileHash' => '444e9d7c1b61f54d175ac61aa4169dbf9bd2ce3c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php' => array ( 'fileHash' => 'a5e41b91c4016b129f5582b780ab961dd55b5936', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityLogLevel.php' => array ( 'fileHash' => 'a837ca848c4a4ea67106fe42d7afe8176f21bc9c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationAccountLockedEvent.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginFailedEvent.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessAfterFailEvent.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthenticationLoginSuccessEvent.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAccessDeniedEvent.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/AuthorizationAdminActionEvent.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputSqlInjectionAttemptEvent.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/InputXssAttemptEvent.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SecurityEventInterface.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityEvent/SystemExcessiveUseEvent.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SecurityException.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php' => array ( 'fileHash' => '590f4a364ed5cd890218aedb26acceb8273198c9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php' => array ( 'fileHash' => '3e7ecfd615b9d3496f43fe929205848da9f0a978', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php' => array ( 'fileHash' => 'c49b377307676f223739e029dfb74118b1f172be', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php' => array ( 'fileHash' => '25d22fd2b77d99837dd9ce887be7d65de5b12fd3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagRepository.php' => array ( 'fileHash' => 'a087fc43376d3daecc2ec6388993d2be7d4966ad', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagStatus.php' => array ( 'fileHash' => 'f43b908849a770445c2ecfa30c1670fa322e81ba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlag.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/CacheFeatureFlagRepository.php' => array ( 'fileHash' => '14e3129b1cdae9b469a60c961c25972c1b6beace', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php' => array ( 'fileHash' => 'a5e1f83bd09223cf51af47ceeeee8900fa989235', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AppendableStorage.php' => array ( 'fileHash' => '1a4f1a9d1e7903d2e68613048d9a47e2d69f1f68', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/AtomicStorage.php' => array ( 'fileHash' => 'efdcf5b3baaa5198f4200c944382bfcb14040dae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/CompressibleStorage.php' => array ( 'fileHash' => 'd21a59014c8af888ac71bfaec95b5e2ea3cfcef9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php' => array ( 'fileHash' => '66c164920ee3afc8d02ce63442428676e6a7f670', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/DirectoryCreateException.php' => array ( 'fileHash' => 'b0712a296243323bc0e56cf83c85f4d157bb9100', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/DirectoryListException.php' => array ( 'fileHash' => 'dd9af85901e68802d4eb3f7e0e1e50d3e8568fa1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileCopyException.php' => array ( 'fileHash' => '5f9e5f268d09906bbdb099f87228406609b536db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileDeleteException.php' => array ( 'fileHash' => '127cd2ed37c4f78840a6e4de9e8cd48ba5d2e57f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileMetadataException.php' => array ( 'fileHash' => '6539aea6fdebd6448136189d7abf934378896775', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileNotFoundException.php' => array ( 'fileHash' => '6831959c27ef69e8a1ffde458b79dfb67e3c8a87', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FilePermissionException.php' => array ( 'fileHash' => '4aac9fad78ad80ebdf0eec3d2b636f4eb03902b8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileReadException.php' => array ( 'fileHash' => 'b19b92cc97184f30997206808335cdf504658515', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Exceptions/FileWriteException.php' => array ( 'fileHash' => '4cf218bb96a50370327b1fe33fb95edde5a88e9d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php' => array ( 'fileHash' => 'e57f6e14e66629579e7a3834fa6b7617018370fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryVisitor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScannerInterface.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php' => array ( 'fileHash' => '85d8882eb9df53aca9620c940aea9db1112dd1ad', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilePath.php' => array ( 'fileHash' => '2ad28849d246ff4fa55febe522482ad780789e32', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileContentVisitor.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/ClassDiscoveryVisitor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/FileDiscoveryVisitor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ReflectionAwareVisitor.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/InterfaceMapping.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ReflectionContext.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/File.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScannerInterface.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php' => array ( 'fileHash' => '8c0f0141cc77c7acb2fcee0ea2efa3b85d56cf04', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScannerInterface.php' => array ( 'fileHash' => '8beea495858471842e551987855b2fb52b1d6e51', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php' => array ( 'fileHash' => 'a9372e43b1809f64ea86d299d5e2c358d0b93247', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php' => array ( 'fileHash' => 'ed2a89b5293df04f70bb2ff4ee26a617a5bb2ed0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemConfig.php' => array ( 'fileHash' => '1bf8138009dca31b48fe8901b27c2a8cd9a1eb8c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php' => array ( 'fileHash' => 'a32d70da3f19f65febd9131451fd13f8d9253eaf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php' => array ( 'fileHash' => '5fcb1c4cf5b82d3d58f6ca06940d2f8c60eacb1b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php' => array ( 'fileHash' => '9990bd539082d1fa4c997fb3f89e8266c9a917d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php' => array ( 'fileHash' => '531f6010803e1e48af0b25b1d2b05dcffa92d618', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LockableStorage.php' => array ( 'fileHash' => '4a3f63ac5b2e0417c0ea4114466cd4591994fc3d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php' => array ( 'fileHash' => '510cb5c92f58cf4884c2a88c5d6140df7158f768', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php' => array ( 'fileHash' => '493ff00c5663f73c62a3651fb536f7174886983f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializer.php' => array ( 'fileHash' => 'c63db13024ae7f17e3c533827f66c2cd562c80d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/CsvSerializer.php' => array ( 'fileHash' => 'c4f341eebe6e0d55ea895fc006540677866faab1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/JsonSerializer.php' => array ( 'fileHash' => 'bd9bedbfeaf78d7b9f6c9872ce1ed14a8fec0e73', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Serializers/PhpSerializer.php' => array ( 'fileHash' => '66fb9b90db696a202cef1e7328793dab06346eec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Storage.php' => array ( 'fileHash' => '14109ba04d57a59c80820fbb6cc7ab72a9b5477c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/Storage/FileFeatureFlagRepository.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Directory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileMetadata.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemManager.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/InMemoryStorage.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/PermissionChecker.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Attachment.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php' => array ( 'fileHash' => 'a496d3840b2eef82fbed967b861c23867eff46d2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageTrait.php' => array ( 'fileHash' => '7b06532eaf679fe25bace0a3b68505d40de1c486', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StreamableStorage.php' => array ( 'fileHash' => 'e4aaf05cc1492a303540bdf8ba39e6a2c5acb35c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AppendableStorageTrait.php' => array ( 'fileHash' => '75bb885faa48e75088a13f957b3be122cfe6c060', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/AtomicStorageTrait.php' => array ( 'fileHash' => '5247f8c2ae4e47688b25bf4f83ae188703aef616', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/CompressibleStorageTrait.php' => array ( 'fileHash' => '8eec48d846efcc230a6e3e440755172f17e5c5be', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/LockableStorageTrait.php' => array ( 'fileHash' => '4aedb933b9873ce0b7fbf947ff503e48dc42523c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/Traits/StreamableStorageTrait.php' => array ( 'fileHash' => '5037d549d45da39b49fc6a420d86e70d14017d97', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileSystemService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/StorageFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), 'usedTraitDependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php' => array ( 'fileHash' => '237799e2b01829d0adc1c5c37125ff391cf505ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScannerInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FilePattern.php' => array ( 'fileHash' => 'cca8909d68e3012ea697ea0a06c0d1841dd6c8ae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScannerInterface.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/FileCollection.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php' => array ( 'fileHash' => 'ff5d89dd39eddcdcdf10b95555bb8e4156da5542', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMetrics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMetrics.php' => array ( 'fileHash' => '04e2507a3a3abcb180169df0388ec136284a0adf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLArgument.php' => array ( 'fileHash' => '8bf367e006dff9e48693a05dba9b3e18df32d8e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php' => array ( 'fileHash' => '4f62dcf3de1e84ac59b29359c541d1557202bc65', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php' => array ( 'fileHash' => '5a2eb48d3228003738c3e0b5de3a7350f5f0e521', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLSchema.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLType.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLFieldType.php' => array ( 'fileHash' => '16745fc554d7daabdeb82cabbf0c9cede7345231', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLArgument.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLField.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLOperationType.php' => array ( 'fileHash' => 'adb93412ea8a61744b8184d1c5721f43ba4fa28c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLParsedQuery.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLParsedField.php' => array ( 'fileHash' => 'ce8a1e01550446c999986de6ce8e575b8eb642d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLParsedQuery.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLParsedQuery.php' => array ( 'fileHash' => 'a6c715b6d74d39ec296be3624bf68ffc9a8cd413', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLQueryParser.php' => array ( 'fileHash' => '51aa14bb137c80e5b4035984932f852a5243178e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLResult.php' => array ( 'fileHash' => '3c1fa02d95cb216955022b694158df1ddcf9dde3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLSchema.php' => array ( 'fileHash' => '2ef9b42966d970f810309e414726e00098aa215d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLExecutor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLType.php' => array ( 'fileHash' => '2c3c3f6f0b58d2f25a29163acdfc52622862483e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/GraphQL/GraphQLSchema.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php' => array ( 'fileHash' => 'd63272510f39de8002f0eec0630106405240539e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php' => array ( 'fileHash' => '6eecbd2b66b9e81d70f384e92455b985da5ec52d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php' => array ( 'fileHash' => 'e3083a1c3ad586322c8f11e9a2f97daf41f61b2d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php' => array ( 'fileHash' => '2acb4880c1a0137268a459b3fea7ef862c99fdf5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckCategory.php' => array ( 'fileHash' => '1671889dcde0bfb3a048c71f347c7a4328ab25dc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckInterface.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckInterface.php' => array ( 'fileHash' => 'ec3e40749112d6b00d5bfcc5a6b10a9d06f759ee', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php' => array ( 'fileHash' => 'c0ac880e520f2f8b619ae1604d9ab3e8556ed3ec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManagerInitializer.php' => array ( 'fileHash' => '6c54a16547bd62daf7d4c894055a4c91b9d4d3e1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php' => array ( 'fileHash' => '5fd327ea7a5ecf2ec146bec4a5db53fe2155e5e3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/CacheHealthCheck.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DatabaseHealthCheck.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/DiskSpaceHealthCheck.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Health/Checks/SystemHealthCheck.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckInterface.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php' => array ( 'fileHash' => '0ba5284ca1ad59827bfbac994abeeb462ada05ab', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthStatus.php' => array ( 'fileHash' => 'c1ffd5c5f6d3b025d42c31b397de24f74e3c504e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthCheckResult.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Health/HealthReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php' => array ( 'fileHash' => 'd5ab0d61477ddcd16ea4db643da5f7f3b2caaffe', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogRequest.php' => array ( 'fileHash' => '77d1ed819a905aaeb996258d84616aab19168a3b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchConfig.php' => array ( 'fileHash' => '5f2639e36c3f699f4d8a3566c646b57da52681e0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php' => array ( 'fileHash' => 'd826187be549115951e723ea7614b9f7ed076493', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchRequest.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php' => array ( 'fileHash' => '608c01e8decd90ff1d69a26652296f491cdebcfd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchRequest.php' => array ( 'fileHash' => 'c8cbcfcacf798f91e0f021625b55b53689904ea1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchResponse.php' => array ( 'fileHash' => 'da0de0e05e7aa6f0799dc7472f218bc9400ba13f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ControllerRequest.php' => array ( 'fileHash' => 'b63969b562328c362338e6cca447b40975a9d4ea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ContactRequest.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Website/HomeRequest.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogRequest.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookie.php' => array ( 'fileHash' => 'bbd8b2478b378edefdbe29ae5c248c1f9e65bb65', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookies.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookies.php' => array ( 'fileHash' => 'cb585cf46aff38ae113bef2f3a4f2e886dd47449', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/SameSite.php' => array ( 'fileHash' => '4759b78d42ff7bfae9b02b1406beca70cd77c23b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Cookies/Cookie.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php' => array ( 'fileHash' => 'a29c08882a9a2779e565e8ce0bd01d2129db45bf', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php' => array ( 'fileHash' => 'bb55817f4e8ae386ddd3980d0a6e82e6a7ef00c2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php' => array ( 'fileHash' => 'f074f41601e6dc23efbab99d691fea784d596fa0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/Emitter.php' => array ( 'fileHash' => 'ab366b20d07ef189f994b16385986b0cfb3b01ca', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php' => array ( 'fileHash' => 'fb88317d5fcc48fbf1b14e43298d2a8d435c7733', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php' => array ( 'fileHash' => '113da55d69456eeb8ba888e56009143ba21c6077', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php' => array ( 'fileHash' => 'd2c87e058d43a02025867a0de96591f5fc29ec97', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php' => array ( 'fileHash' => 'a43964e7b7ed40c35aaffdf63de2dbf706c375b2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Exception/HttpException.php' => array ( 'fileHash' => '5a87031e984556190fff456d53b9f55d3215f414', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exception/NotFound.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exception/RouteNotFound.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Exception/NotFound.php' => array ( 'fileHash' => '8c7354eb77f4e012f276eaefa2b7f4f357806c89', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Exceptions/MiddlewareTimeoutException.php' => array ( 'fileHash' => '6716695b41850b12d58cdb67447296fda70a8f96', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderKey.php' => array ( 'fileHash' => '76747bf334752d6b817c15aaed8881d2c4e27a6f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/RedirectResponse.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php' => array ( 'fileHash' => '03ae4d6b2d7fdead3c6585f42ce77e135e0fb7a7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Headers.php' => array ( 'fileHash' => '30a9aa5aeb0095359b5520ffe404b80999c0523f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HeaderManipulator.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpResponse.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Response.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/NotFound.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/RedirectResponse.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthResult.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlResponseParser.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 96 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 97 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 98 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', 99 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddleware.php' => array ( 'fileHash' => '266e16f2a1906324b3101a68fafe8fc7f5b2acee', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/AuthMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ControllerRequestMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php' => array ( 'fileHash' => '058615a1d5de602cb5a309a61938dcf14b9fddd5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManagerInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChainInterface.php' => array ( 'fileHash' => 'be5cb572e68bd2dff28566ed8e98a307dd14361a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManagerInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php' => array ( 'fileHash' => 'cd51fc425230223df290f2b722979622935f17a7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChainInterface.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpResponse.php' => array ( 'fileHash' => '7de40d75658aec3cf5d28be777164ca886d76ced', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/IpAddress.php' => array ( 'fileHash' => 'd9b2728125b13d2910c4f7420ee11cbc19699352', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpNetworkService.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/CidrRange.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 45 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Method.php' => array ( 'fileHash' => '6a0628e90a33e2d36a4a556ed4690b60471254fb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 19 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 20 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 21 => '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php', 22 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 23 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 24 => '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php', 25 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 26 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 27 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 28 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 29 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 30 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 31 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 32 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 33 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 34 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 35 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', 36 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 37 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 38 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 40 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 41 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 42 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 43 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 44 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 45 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 46 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 47 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 48 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 49 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchOperation.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 106 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 107 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 108 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', 109 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 110 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 111 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 112 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 113 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php', 114 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', 115 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', 116 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 117 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetrics.php' => array ( 'fileHash' => '3031a5c80d2073046094bbe843e2467356ebf7d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Metrics/MiddlewareMetricsCollector.php' => array ( 'fileHash' => 'c29ea5ac35736b0f9af95b67de779ac133f79afc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php' => array ( 'fileHash' => '077abce04c7dcb3a21e20d0415e272962e9074b3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareCircuitBreaker.php' => array ( 'fileHash' => '7e60df0c503add36264cb5de15673bf3cc0440ad', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareContext.php' => array ( 'fileHash' => '741c8e681c0f8b9c7886a7510f6a257a680d82b6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddleware.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/AuthMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ControllerRequestMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Next.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyException.php' => array ( 'fileHash' => '22d7ea746d6c53b54bddf9c4488b1c6b05dd37d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php' => array ( 'fileHash' => '61125f38e9cf0d51260cebca761cf9a00c6cf705', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php' => array ( 'fileHash' => 'b64969f69270db943560f6e3a4e2e8f9c4224788', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php' => array ( 'fileHash' => '33474a8ece58b3773b6bd3a16569d6f18bfcedc9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManagerInterface.php' => array ( 'fileHash' => 'af291a80cdb21baa6ddcca2cb16df818c25ebe54', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriority.php' => array ( 'fileHash' => '631a44e53d0ef9a5b6ecd7254320d53e49765313', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriorityAttribute.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/AuthMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewarePriorityAttribute.php' => array ( 'fileHash' => '0a6b77f0c7bf950063315429eb8f12c6722b128f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareStateManager.php' => array ( 'fileHash' => 'e400a73e0ad1d11aff7bafcfbed31ac04c91ccc6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php' => array ( 'fileHash' => '918a8544da139a0a70b653f72a3cf230ab81ff49', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/AuthMiddleware.php' => array ( 'fileHash' => '6194a2deba8537b2cb1f5b924410b8e3ca18a671', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php' => array ( 'fileHash' => '5d8fc18756fa9234628394debb7c68a11d529728', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ControllerRequestMiddleware.php' => array ( 'fileHash' => '6aea5a9e0f08901bfc773d4ee37b396b93cfc099', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php' => array ( 'fileHash' => '0b47bf42ea77a39ce98be27ded893eb99eb47a3d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php' => array ( 'fileHash' => '2645abbfe0795948e84984910143d5364485bb93', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php' => array ( 'fileHash' => 'b78c58adde481d95aa0fede8c997e09a8f1e137c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php' => array ( 'fileHash' => '194ed53dd9e5c84e6841d7fccef868f21795db76', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php' => array ( 'fileHash' => 'd249655588a0e79db23270ed2a6bc60651dfbc51', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php' => array ( 'fileHash' => 'a5310b5a80e6f9681be22a392590ae919d44e44a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php' => array ( 'fileHash' => '070216f89328b8e94576258d12feb418c323b7e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php' => array ( 'fileHash' => 'a3b91c2d3d0e5297015bd26d537554252f6866f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php' => array ( 'fileHash' => '1e1564bad0af7836abfc31a30aa70ac795bc6559', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php' => array ( 'fileHash' => 'dde971e3deac2c19dc6ca807f23ef22d4ea2ec7d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php' => array ( 'fileHash' => '061174719aa8b7316b6208cfc4d490fa329e1f96', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php' => array ( 'fileHash' => '5cd2d55e29dde89ffd690ce4620e6fae748ceacf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php' => array ( 'fileHash' => 'f5f422f610e48b428241d3a79b1f4bea1e42aadb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderConfig.php' => array ( 'fileHash' => '0179b51fad4a797d15f2b1d861396648cd213920', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php' => array ( 'fileHash' => '8da98655607cd0abc95418c583cba9723834e882', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php' => array ( 'fileHash' => '4fc132de2670eabec732e5bd15e8a34d477ac278', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php' => array ( 'fileHash' => '7b7ad92269531e08c8983d6cd15462a63c83d44b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeType.php' => array ( 'fileHash' => '41582cd998e1bd9af8602ce0db562cf0c840e325', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeTypeAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeTypeResolver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Attachment.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeTypeAnalyzer.php' => array ( 'fileHash' => '0749b409571d23a99fa4ba213ce9ee0a5c016d18', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeType.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeTypeResolver.php' => array ( 'fileHash' => '25c2b6ef9f720d13acc305f4aa6e7940d17bac57', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MimeType.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/NamespacedState.php' => array ( 'fileHash' => '028da05d635631fb45947a6826522806f259ad05', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestStateManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Next.php' => array ( 'fileHash' => 'b8ce017f71929c14051bfa3f5129c59cfb5b8d6b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/AuthMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ControllerRequestMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php' => array ( 'fileHash' => 'e0f6c26b061df159d1b87b17d929b0a053eb0a63', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/Exception/ParserSecurityException.php' => array ( 'fileHash' => '59316e3b4faf9b5a2a066ac7971e2f7d1781b19f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php' => array ( 'fileHash' => '865805c9362cc06f6f45667bd3fe4f451a9453c2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php' => array ( 'fileHash' => '83691693e1e5148a8727b16fa16fb66334d275b6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php' => array ( 'fileHash' => '5d1e2e25f42202d4f1e3dbab219206c78373e11a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php' => array ( 'fileHash' => '30bbe93ccfb35405a55a4f3524800d906355c8d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserCache.php' => array ( 'fileHash' => '8ded6d70867830210284e6421bde7dff0df9540b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/ParserConfig.php' => array ( 'fileHash' => '33acf2c7861829b70a5bbf2b9d7d4a0954a28f78', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/CookieParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HeaderParser.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/QueryStringParser.php' => array ( 'fileHash' => '7857321e7ee14e26791b7060d23c621c9354c765', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FormDataParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php' => array ( 'fileHash' => 'b275ea62abce04e100e370b6b67fd7a257693d04', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Query.php' => array ( 'fileHash' => '00bd13702453b39144964e60c9dc286b25ffeb3a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Range.php' => array ( 'fileHash' => 'f35d19a0b44d7cc703f9bbd791485d824c9e4a95', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/RangeParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php' => array ( 'fileHash' => '807c698565ff954d27384ac5bf167607a050213b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 19 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php', 20 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 22 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 23 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 24 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 25 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 26 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 27 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChainInterface.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareContext.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareStateManager.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestStateManager.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteParametersInitializer.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Router.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 106 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestBody.php' => array ( 'fileHash' => 'c9d97dd1045317d81457eda0ef2bb6a8685adb4f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteParametersInitializer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestFactory.php' => array ( 'fileHash' => '03fcc8681c2a661d7860816fe670542873028dca', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestId.php' => array ( 'fileHash' => 'a42ef594f6ba7183912c0aa178ae8b7cc39955ba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorContext.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestIdGenerator.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/RequestIdProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestIdGenerator.php' => array ( 'fileHash' => 'c0a38af939428c3ea3ddfb5d7cd6dff64d78c97d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/RequestIdProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php' => array ( 'fileHash' => 'e31ffa0b329cea1b138dcab4f9b4fa81410996c1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestStateManager.php' => array ( 'fileHash' => 'f48272587a44bc38848ff1e5a0f7d1d89559f562', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareStateManager.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/AuthMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ControllerRequestMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Http/NamespacedState.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResolvedMiddlewareStack.php' => array ( 'fileHash' => 'd1354116c200e364953c4c0ed7966d4abbd3bc78', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Response.php' => array ( 'fileHash' => '57745357ddbf73516e5a313f565ee122b12acff1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 19 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 20 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 21 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/Emitter.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChainInterface.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpResponse.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareContext.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/NotFound.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/RedirectResponse.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php' => array ( 'fileHash' => '90f34095c32cf301cff6be3ae29ac1527f150a11', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php' => array ( 'fileHash' => 'c714034dadc5aeadbf47616abeab3a1e45505717', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CORSMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RemovePoweredByMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestIdMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/SecurityHeaderMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseType.php' => array ( 'fileHash' => '1b25cdf8197e1c458571a621bc7bee3e2660dc3a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php' => array ( 'fileHash' => 'e9c4ddf9e109c8bdd3af594c077d92961f7448f5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php' => array ( 'fileHash' => '3df92146b596b988ca506f2f66426075ea3b4153', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php' => array ( 'fileHash' => 'a82b0c3a54940cc15c269cc1b4c59c4ac14226c0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/MediaType.php' => array ( 'fileHash' => '37352e4b66feb5a28e174244e7e0d4d2b528b56e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/NotFound.php' => array ( 'fileHash' => 'cf39f4bd9a776443d5e1f52b8dc6ef611a63acde', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/RedirectResponse.php' => array ( 'fileHash' => '1630e91590a8f8db2dbf8ebe815810a628b38753', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php' => array ( 'fileHash' => '71d35b9486c56ac2085d67878f7a28133fc52174', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php' => array ( 'fileHash' => 'ee0f16adce520652c49d94abbce5bf8ef2897405', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/Streamable.php' => array ( 'fileHash' => '579a69722205c4711f78ef312c3281c069f90ec4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php' => array ( 'fileHash' => '4f4c7aa9ca839a247c4171cd3e3f4f8b0cc4d2c3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php' => array ( 'fileHash' => '7a25c49d771b0846964cc46f6a20f441ced9948d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerKey.php' => array ( 'fileHash' => '6a22c31e2312dd3e24c9c97f24cb033c6290e5fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerProtocol.php' => array ( 'fileHash' => '5c6d10a6ad658f2105902f0e4b7f8326db4f748a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpNetworkService.php' => array ( 'fileHash' => '92fb2a382df1d4610899bd7f279b287ed0302455', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpRiskLevel.php' => array ( 'fileHash' => '5856381e13093cfcd3fbb56bceba761af9c8c9f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Services/IpSecurityService.php' => array ( 'fileHash' => '04938dc68dba34a6ea5d73add727819d7407fac1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php' => array ( 'fileHash' => '1e7fadfca63fabe007c40b3d78a4ed27c13d62c7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/CsrfTokenGeneratedEvent.php' => array ( 'fileHash' => '93a253c120c62674298c2dc21db9c444a8478067', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/CsrfTokenValidatedEvent.php' => array ( 'fileHash' => '9ac0226f31e712713b2d059cdfbb61129a8204f1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/FlashMessageAddedEvent.php' => array ( 'fileHash' => '1c28aa8340e249d40fa0ab5cf42f945ce9ac2056', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/FlashMessageRemovedEvent.php' => array ( 'fileHash' => '280b82a7e0172477cbb118486c1ca4506a45e962', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionClearedEvent.php' => array ( 'fileHash' => 'aec7ab77200c65bd0818da932a108e64153e4708', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionDataChangedEvent.php' => array ( 'fileHash' => '5544be771dcce0da714730b0b33449594bf426f4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionDataRemovedEvent.php' => array ( 'fileHash' => '43f9780eadfd8ed1c68c8dec24cc688a3e387ee3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionInvalidatedEvent.php' => array ( 'fileHash' => '194fe0c80b810ee2f8fa45576806c034705970c7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionRegeneratedEvent.php' => array ( 'fileHash' => '7a76339772ff63d78b6556f45a7454a5181b10d4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php' => array ( 'fileHash' => '19b2d63b2df7700446864ae11501aff2b1413367', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Fingerprint/FingerprintData.php' => array ( 'fileHash' => 'e6d59b0a57e7e30ad8e8023c15f88cbfb48fd70a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Fingerprint/FingerprintMissmatch.php' => array ( 'fileHash' => '2b2fd1b70f861f0db027a8d561ebaf8f2ef7e509', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php' => array ( 'fileHash' => 'f5666e09528a5a29b06aad72317b9c824baca3b5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php' => array ( 'fileHash' => '33445e0cdece80f4562fa1e40e83f8aedf70a5f0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php' => array ( 'fileHash' => 'e841a3d390380258646621c173bca8a0347ac3ed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php' => array ( 'fileHash' => 'c9323af665df6b86a3f14d45d010473368b5d071', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php' => array ( 'fileHash' => 'ed51714bb68139ef33c7a312f82c4648f56960f3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php' => array ( 'fileHash' => 'ecfdb0b72dc012a5d92b8e5e521933d04cfc0d65', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php' => array ( 'fileHash' => 'c707a4cc65d398253aff49532a57e6dd05e2f3a5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php' => array ( 'fileHash' => '2aaf5f75cfd956e3f97b330ce0cf8ea08d91aaaf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionCookieConfig.php' => array ( 'fileHash' => 'd8aae67e3e37eed266eef526819488110650b2d8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php' => array ( 'fileHash' => '4a10135e09c524d7764b60e9c6899af37c4f2c53', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php' => array ( 'fileHash' => '94f0f3f27b6c0ba631c7a6fb31bd1cd2ae1dd251', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprintConfig.php' => array ( 'fileHash' => '0c262a6e4a1c8697eca467cde830e109dc7ca66b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionId.php' => array ( 'fileHash' => '535c2eda315e9a5d10f5c13f60d7d1bbb41feade', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/CsrfTokenGeneratedEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/CsrfTokenValidatedEvent.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/FlashMessageAddedEvent.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/FlashMessageRemovedEvent.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionClearedEvent.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionDataChangedEvent.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionDataRemovedEvent.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionInvalidatedEvent.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Events/SessionRegeneratedEvent.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionIdGenerator.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SimpleSessionIdGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionIdGenerator.php' => array ( 'fileHash' => '7087277f3493954b977060d9d08be2adef0c85d6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SimpleSessionIdGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php' => array ( 'fileHash' => 'e809dc960db3c4a38c301d8e622b2bb1ea1d007c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php' => array ( 'fileHash' => '07e8565bebaf1841cf88732e74c7735f840ae0e8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/Processors/UserContextProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionKey.php' => array ( 'fileHash' => 'a29f09a6fb1a7dc23873fe6b155758771d782d81', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php' => array ( 'fileHash' => 'dd52932b1ebe18969ccbc95003290f2699b15ef1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php' => array ( 'fileHash' => 'f163629e8470838e0e38176c025628d12cf9840d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionSecurityData.php' => array ( 'fileHash' => 'a000981f5e98a06cde45e54ea99a58ff5f67eafa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SecurityManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionStorage.php' => array ( 'fileHash' => 'fd05a72d4c26455ac9ed43ab81450b62ff1a0652', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FileSessionStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/InMemorySessionStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SimpleSessionIdGenerator.php' => array ( 'fileHash' => '02ecf4d1adb84e8663c0963c24bf7fbe8997a8e1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php' => array ( 'fileHash' => '2d21aec0af8c31eaf362be000dd61256cd7aa2cd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/CsrfDataCollection.php' => array ( 'fileHash' => '9708be6f4eecebaa45f9a04e1e4db45f883b9755', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php' => array ( 'fileHash' => '1f85deec46ed65059c837f6d140f255fe80c53b2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php' => array ( 'fileHash' => '39c3e1e022380fa4f536444575138e624a204384', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageType.php' => array ( 'fileHash' => 'c73c2556963ec5228a5c0242ccc4ccc5c6fdb61b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FlashMessageCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormData.php' => array ( 'fileHash' => '3fbb9858b06651769fdaed84b50dfac57e0b1122', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormDataCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/FormDataCollection.php' => array ( 'fileHash' => 'aa01197a174e2a189ae4cf0bab0acd5fb7b84112', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityData.php' => array ( 'fileHash' => '093bdc48959bce0c8cd123d67f8d36a3917ad9cc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SecurityDataCollection.php' => array ( 'fileHash' => '7de6187e110d0414347c22e8a16b124cd95a0bbc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php' => array ( 'fileHash' => '482d657e8c16d4c6c7a532ac5d81a4f2171bfb1e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashBag.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormDataStorage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationError.php' => array ( 'fileHash' => '6380c77e2667db864b286765f506d8bf6dd5f9f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/ValidationErrorCollection.php' => array ( 'fileHash' => 'af03ffd095e3ac68e7f597aae39c81efcc111089', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FlashManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionDataExample.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValueObjects/SessionData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/SimpleRequestIdGenerator.php' => array ( 'fileHash' => '04129cdfb2569e3efecf66b0bc73a40dca46e151', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php' => array ( 'fileHash' => '40c4cc81507357462af23eb228e9475c225080ca', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/StateKey.php' => array ( 'fileHash' => 'bcb071474537298ab97d09aa6f0c4a2046d08336', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/NamespacedState.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestStateManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Status.php' => array ( 'fileHash' => '8c20ac00d20a6a1925285bc438dbeadbfefe8624', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 19 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 20 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 21 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 22 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 23 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 24 => '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php', 25 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 26 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 27 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 28 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 29 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 30 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 31 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/CircuitBreakerHealthMiddleware.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorResponseFactory.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchProcessor.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Batch/BatchResponse.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/AdaptiveStreamEmitter.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/HttpEmitter.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/SseEmitter.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/StreamEmitter.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exception/HttpException.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Exception/NotFound.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpResponse.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DefaultResponseMiddleware.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ServeStaticFilesMiddleware.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Response.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseManipulator.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/JsonResponse.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/NotFound.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/RedirectResponse.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/StreamResponse.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionMiddleware.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlResponseParser.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Exception/RouteNotFound.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/HtmlResult.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/Redirect.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 93 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 94 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 95 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 96 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php' => array ( 'fileHash' => '08cd107764bce9fa9543fdc339a6565ed68fc153', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php' => array ( 'fileHash' => '0fdc991f2d22981003a2d9465b67f283daa06588', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/MimeTypeDetector.php' => array ( 'fileHash' => '9a44c944efdc75b2bc64f91add85243e968fa7f0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/PlaylistType.php' => array ( 'fileHash' => '80cb1a7f421a75a0da8dd4a4787ee26fd91bd860', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/RangeParser.php' => array ( 'fileHash' => '88269c090d01ffec0cb7c28c006b7dc22b8ad0e0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/StreamRepresentation.php' => array ( 'fileHash' => 'b54bf70fe541629f420f80f9fdf5b665d640c9c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/StreamingFormat.php' => array ( 'fileHash' => 'b8ec338cf7a5db8bd192ab1850a730cdd88288a7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ResponseTypeDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/AdaptiveStreamResponse.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptivePlaylist.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Streaming/AdaptiveStreamingController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadError.php' => array ( 'fileHash' => '9758ce40eda6539c2448c0e7ce8edf5e3793d33f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFile.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFile.php' => array ( 'fileHash' => 'e766a24b76677b14bcdf950365b682c1bb3ca46a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/StreamingParser.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/UploadedFiles.php' => array ( 'fileHash' => '32d53625bd4901af3b4c497ce0e67d1a651c0d22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/FileUploadParser.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Parser/HttpRequestParser.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/RequestManipulator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Uri.php' => array ( 'fileHash' => '0e78477db190ae93ecb8c7bfb7be05f91ed244e6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/RedirectResponse.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/CidrRange.php' => array ( 'fileHash' => 'c9f2258383c13600dd893ea68175bd2a447b6e8a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/ETag.php' => array ( 'fileHash' => '13612e1abe4bf1913305326418f8f4c33b6cd1fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/ValueObjects/IpPattern.php' => array ( 'fileHash' => '04990244958238f93a1814cb1511e3ed5f4861ed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/ApiVersion.php' => array ( 'fileHash' => '483a0fc7107d0664d4a1a91d3ce1c3d435efc735', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Attributes/ApiVersionAttribute.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php' => array ( 'fileHash' => '738d621b28380e7326a1fff35c2b1d8a2ee3528d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php' => array ( 'fileHash' => '54a06f306fe62ab1da1aa72bce3a1e24c4aab5f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningStrategy.php' => array ( 'fileHash' => '934a5b3a73e5501a71a52999c81627eff058453d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersionExtractor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Versioning/VersioningConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketConnection.php' => array ( 'fileHash' => '4f2af667b82bb6200893d160611f5c8cac4cb543', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php' => array ( 'fileHash' => '9b5864a12fc52b567d1d45c2912b2a5263ae19a2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Emitter/WebSocketEmitter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php' => array ( 'fileHash' => '8e1315d7eec3e36c02b3ee42d2e527cb281bb2f7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php' => array ( 'fileHash' => '30213f7d70d7fbe4556a59d2ae71017330cd27ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Contracts/AsyncCapable.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php' => array ( 'fileHash' => '807a584e97545be9ac3eca6c5830a7984872b740', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php' => array ( 'fileHash' => '3949db3af7257f07b1d300de3ac867cded95a6a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php' => array ( 'fileHash' => '30fcebe1ac78c4a95284d0fcd01d735da5451ccd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 6 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthResult.php' => array ( 'fileHash' => '60f6a8a882f47921911ccef1a6364a026da51649', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthType.php' => array ( 'fileHash' => '80194de1ee9638cfa7f327cbfebb2a899de2aa53', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AuthenticationHandler.php' => array ( 'fileHash' => '8eb55c11d62859aa294afa7aa5c98323db0b1434', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientOptions.php' => array ( 'fileHash' => 'd4680bbff27078ef4563c9d8dd6b7c6cf905584b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 7 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 9 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 10 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 11 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientRequest.php' => array ( 'fileHash' => 'd618ebc5cb6df677403edaaa195395abd3b22065', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClient.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientMiddleware.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientWithMiddleware.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 21 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 22 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 23 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', 24 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 25 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 26 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 27 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ClientResponse.php' => array ( 'fileHash' => '58fd6178ac3ac1e72cc13b1c6a3b4e4042612267', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlResponseParser.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClient.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientWithMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 25 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 26 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 27 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', 28 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 29 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 30 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 31 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php', 32 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', 33 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 34 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Contracts/AsyncCapable.php' => array ( 'fileHash' => '2d5b046138965bf2c60e01aec18316188b686a78', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php' => array ( 'fileHash' => '3b3236607016cf9ec0ae46de6636c2c27c5e8a8b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlRequestBuilder.php' => array ( 'fileHash' => 'bc93a4f7ff9202a60dc25cbdacaff547336ef681', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlResponseParser.php' => array ( 'fileHash' => '0f39485293c9ee70ed71b7bfa5741ec1286576db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php' => array ( 'fileHash' => 'fb74db9ba1000d5e7de197d8c553912a9f8036f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php' => array ( 'fileHash' => '3fa8adc2ff0733d00ba48bd21bfca6a1c0783562', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php' => array ( 'fileHash' => 'ebae435f542824fb791f5278a992542ef1abd805', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php' => array ( 'fileHash' => 'bfe24eb667e68da925b6bcbf59c5532d67dc2708', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php' => array ( 'fileHash' => 'e0ab92de74b5350f93229d4281e1cc6f0cf41ad6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlExecutionFailed.php' => array ( 'fileHash' => '3f428e23ae8fa2b213d594fcbbc40e31234cccb1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/CurlNotInitialized.php' => array ( 'fileHash' => 'dfed2c72613bc42bce2b005ad32d5bfc20d96eb0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/HttpClientException.php' => array ( 'fileHash' => '51ade2c2feea923d4d7cc5fe1ebff582430f1f29', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ClientErrorException.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/RequestValidationException.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ResponseValidationException.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/RequestValidationException.php' => array ( 'fileHash' => '729e12f93b803748b91e590e576d6dd4f7224814', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ResponseValidationException.php' => array ( 'fileHash' => 'e25079773c222b8dac6c4aa2190816d994b82c7e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Exception/ServerErrorException.php' => array ( 'fileHash' => '8c5e0239721be515e77a25f69a3e519cb84603e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClient.php' => array ( 'fileHash' => 'ed4bc6efe4f525376aadaacb88fc7f8bbc703c0c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncAwareHttpClient.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientAdapter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientBuilder.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/AsyncHttpClientDecorator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/CurlHttpClient.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientBuilderExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientDemo.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Examples/AsyncHttpClientExample.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientWithMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 18 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', 19 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php', 20 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php', 21 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php', 22 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php', 23 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 24 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', 25 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', 26 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php', 27 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientInitializer.php' => array ( 'fileHash' => '9c76ecd312fccfae26c7853b2157b91b53e0b3f0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientMiddleware.php' => array ( 'fileHash' => 'e8ec0e062e4e5386cd13c4025934999bb1172f12', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientWithMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/HttpClientWithMiddleware.php' => array ( 'fileHash' => 'c790d29b521736b7c0a6980a0228055b5e7187a9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/CachingMiddleware.php' => array ( 'fileHash' => 'ff0a60a3970e13dd2c8f606565be24b7a74b0828', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php' => array ( 'fileHash' => 'd4d2c38c0e7c10d0db5b982d0b1147f4b52e0f7a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RateLimitingMiddleware.php' => array ( 'fileHash' => '4bbb1514aa2e98a153b9adf5beff73ddacef173f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/RetryMiddleware.php' => array ( 'fileHash' => '9a4f2bd6942e4ca9e3517350efd84cd4fa2c3fd7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php' => array ( 'fileHash' => '00629c564dbf4814ce27c2e4cfd6ba57ca584ab3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/RequestValidator.php' => array ( 'fileHash' => '491e89641635d8ef00008ef4ce00ae7f5965873c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/ResponseValidator.php' => array ( 'fileHash' => '80a106a163ba7a10ffb8cd8596b316786eb79efe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/DefaultHttpClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/Ksuid.php' => array ( 'fileHash' => '2c71861726d1a0ae431da6a68feaa9b4f170225b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php' => array ( 'fileHash' => 'bbc8351dfda868504cf908082efb942075085e45', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php' => array ( 'fileHash' => '8c677cd23f3db882b96c5628ef6ba04ee7fd0d6d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php' => array ( 'fileHash' => '4179eff8486f1661ba2c5dee0cecfc4b509e364c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/System/BootLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Formatter/LineFormatter.php' => array ( 'fileHash' => 'd2b7fa1349c090cb5827b84d16f82a928c7f0ad2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Formatter/LogFormatter.php' => array ( 'fileHash' => 'd196e4b7ebdf4be6956a4dbc93d47617d918dfd8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Formatter/LineFormatter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php' => array ( 'fileHash' => '9608c0b17bd0549610a86f758197bae29da78fbb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php' => array ( 'fileHash' => 'be7fd6c78cce34c6506abd7ac7b4321cc92ef794', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php' => array ( 'fileHash' => '714510b4da7d3bd2276f66ce504a201141e4fa36', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/QueuedLogHandler.php' => array ( 'fileHash' => '1a25a6abb5ac34d8069ed8e5437a79fd118c8ffa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/SyslogHandler.php' => array ( 'fileHash' => 'f94e607d24a25def06f9d428b93816016758675b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/WebHandler.php' => array ( 'fileHash' => '8af291ae56092871a3f5e153e6c5bd682e96411e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogConfig.php' => array ( 'fileHash' => '15579b2deda3268c313bbdf6f05de4956c971e81', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewerInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogHandler.php' => array ( 'fileHash' => '6985df8a4725de909943203fe65d9f47e26d02c6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/QueuedLogHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/SyslogHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/WebHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogLevel.php' => array ( 'fileHash' => '1a7e73495ac9b723a7b16d825cd1f7edf8040d31', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/SyslogHandler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/WebHandler.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogProcessor.php' => array ( 'fileHash' => '385f0f3a12fe12d008e2d0179a08349a0a9505dc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/RequestIdProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRecord.php' => array ( 'fileHash' => '93c48bcce2db15c7ba4687342652e7c07efb3654', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Formatter/LineFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Formatter/LogFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/ConsoleHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/JsonFileHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/QueuedLogHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/SyslogHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/WebHandler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogHandler.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommand.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/RequestIdProcessor.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogRotator.php' => array ( 'fileHash' => '623c177c27b4177601e32663a811476a17d8b778', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Commands/RotateLogsCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/FileHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewer.php' => array ( 'fileHash' => '2f272c8fe0a81f7b921587c0bd60de1c1fc72ffb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewerInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LogViewerInitializer.php' => array ( 'fileHash' => '6f3439b1ad4939ed87d466d101d28752d65d503d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Logger.php' => array ( 'fileHash' => 'f8271c891f3dfef133035f42d2675164f8b26bf5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/System/BootLogger.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEventPublisher.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/LoggingMiddleware.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundary.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundary.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryInitializer.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Events/BoundaryEventPublisher.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ApiErrorBoundaryMiddleware.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddlewareRegistry.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/MiddlewareServiceProvider.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorLogger.php', 59 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventHandler.php', 60 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 61 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 62 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 63 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/DefaultEventBus.php', 64 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventBusInitializer.php', 65 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 66 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 67 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', 68 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 69 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ETagInitializer.php', 70 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpMiddlewareChain.php', 71 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middleware/ETagMiddleware.php', 72 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 73 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareInvoker.php', 74 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 75 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/DDoSProtectionMiddleware.php', 76 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ExceptionHandlingMiddleware.php', 77 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/HoneypotMiddleware.php', 78 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/LoggingMiddleware.php', 79 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RequestLoggingMiddleware.php', 80 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 81 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/LoggingMiddleware.php', 82 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 83 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php', 84 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 85 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 86 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 87 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php', 88 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 89 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 90 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 91 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 92 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 93 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 94 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 95 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 96 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 97 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 98 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', 99 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', 100 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 101 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 102 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 103 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', 104 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 105 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', 106 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 107 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 108 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 109 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 110 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 111 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 112 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 113 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 114 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', 115 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 116 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 117 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 118 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 119 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 120 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerFactory.php' => array ( 'fileHash' => '6a45d20e49906639cf61d9c3508cceb1cd577dc0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FilesystemFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/LoggableStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php' => array ( 'fileHash' => 'a482b58cc9682dcc5c7636f75600f936bbee1ecd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommand.php' => array ( 'fileHash' => 'd59d7cb5d7809196ff5025b62bfa7865dbeae3e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/QueuedLogHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessLogCommandHandler.php' => array ( 'fileHash' => '0ac912c3e52cae3c0de1b34061d5fc64e2f9447c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/ProcessorManager.php' => array ( 'fileHash' => '2124dda6d17d7b95781745a4e41177cbea2a8b37', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/DefaultLogger.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/ExceptionProcessor.php' => array ( 'fileHash' => 'a36308beaa3e53c043b2dbd1c42fca9f5ce9753f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/InterpolationProcessor.php' => array ( 'fileHash' => '047d7592c85cfb6c15705586490864ddc4e4aafb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/IntrospectionProcessor.php' => array ( 'fileHash' => '375bdcba130c693c6ba17074231eba1895b4f73f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/RequestIdProcessor.php' => array ( 'fileHash' => 'cd02c5d516f2a1f2872235c52bd31bd02b9beecc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Logging/Processors/WebInfoProcessor.php' => array ( 'fileHash' => 'd46545a14f7d7d9479675dd8f7d90c53817a8016', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Attachment.php' => array ( 'fileHash' => '27625096b11832a255ad9d6330b39e6468e68d6c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommand.php' => array ( 'fileHash' => '584430383313ca3ce901c1decfa789fa591a339f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php' => array ( 'fileHash' => 'e65b90b42320e2b2a4d3a053a11f82726390da12', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommand.php' => array ( 'fileHash' => 'e3f640cf81ed254c62ba97ddcf60b2797e4044f9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php' => array ( 'fileHash' => 'd7522e58a6cd34283557266564e805ee1826ac04', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/EmailList.php' => array ( 'fileHash' => '46d252d832aa977358ab8453260a5e5cc8d04e44', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php' => array ( 'fileHash' => '301eb4bf0b0cb3db6f9112d8f803d97f7eee8acc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Exceptions/SmtpException.php' => array ( 'fileHash' => 'b2d4261004f56dbaf6c2ef0af8a6cf91d9dfbf7f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php' => array ( 'fileHash' => 'c9961ce7f5dbbcabd5c8a54c2da250f2e20f5317', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php' => array ( 'fileHash' => 'b08b70bcdac19a3898c6824c3ae453142d66953a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php' => array ( 'fileHash' => 'd104228f9e7e038c35f645b03d5fead538e0b743', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommand.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommand.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/MailerInterface.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php' => array ( 'fileHash' => 'b48f46fd38c82f7c109dde63cd68a7ed81880023', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Priority.php' => array ( 'fileHash' => '2e60032c887b329db820f9257a098650128434bf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Examples/MailerUsageExample.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Message.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpConfig.php' => array ( 'fileHash' => '8c986b7032d3a8f021cba4c6824b3414370c57a6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpEncryption.php' => array ( 'fileHash' => '6ce202469af56fb99efc16414a6e32ae058f505e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php' => array ( 'fileHash' => '29e63dcb81a446f591ea1716749352ef43f6973d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php' => array ( 'fileHash' => 'ccc32eb1e5b9cc4f142e20cb10a0396c2f2355e0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportInterface.php' => array ( 'fileHash' => '77c95af9faaec40d49f83ebe30a37fecda2f7138', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportResult.php' => array ( 'fileHash' => '896a7c329eaedd908fe639b775dd75af3797f381', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailBatchCommandHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Commands/SendEmailCommandHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/PooledSmtpTransport.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/SmtpTransport.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Testing/MockTransport.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/TransportInterface.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownConverter.php' => array ( 'fileHash' => '7d85196f755bc7b66a44d91c7683785cb4112e76', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php' => array ( 'fileHash' => 'ea7f05987885d8fca9824f5d9b829c14cd8010b7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownTheme.php' => array ( 'fileHash' => '0be111ad38740dcec0b4aec459caca992bd4dd63', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Markdown/MarkdownRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php' => array ( 'fileHash' => '0dda6f3332606e3eda3c039adea94b54b21ac59a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php' => array ( 'fileHash' => '11a39da7efa6539667a1537ad297eddcf816090a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResource.php' => array ( 'fileHash' => '9f1090d7d0f83f02dc557954bbe7dc27b0ae3d82', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php' => array ( 'fileHash' => '8ad8710cf30643c74f78b8165b17f39d72ee1754', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceRegistry.php' => array ( 'fileHash' => '1e72e3c9cb9347a69e50c6e760d48faffdcbaeba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php' => array ( 'fileHash' => 'd2a8aa22ef1c89231c44a40f368415e8aa4b8676', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Console/McpServerCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpTool.php' => array ( 'fileHash' => '07928ef13a62fae93e25b1da7b3a9cba829ba97b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php' => array ( 'fileHash' => '19eb8ca3ad9819dda4837141744d57a73c28599b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolRegistry.php' => array ( 'fileHash' => 'fe66ce5a6bbe0b1e8fd43664d5488dd0c3a04220', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpServer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CacheTools.php' => array ( 'fileHash' => '474000d92d3ae0ae50625272c9cb237437a958c0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php' => array ( 'fileHash' => '6349f4b2bc019610174cbb89866524c4f5f4959c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/DatabaseTools.php' => array ( 'fileHash' => '622dd480c92d30e7c93e99c2c1242a044ab871a0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FileSystemTools.php' => array ( 'fileHash' => 'de1e2ccc120c2edb2bb9baa56023c405a70926ed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php' => array ( 'fileHash' => 'ef90b5316be45c6ad69b902830c7b7bdbf375254', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php' => array ( 'fileHash' => 'e38460a969c8426c242adde0db8f267c0837f08b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/LogTools.php' => array ( 'fileHash' => '69cbd9d1479cfd10eb2ee7621e331f814421e54b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php' => array ( 'fileHash' => '53bb2ae7052533b790d44ceee3693c8d566c2a67', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/Keywords.php' => array ( 'fileHash' => 'bb00066328b91f0457e2af1d9bd19972175629a1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/MetaData.php' => array ( 'fileHash' => '6ac6f15765b1ce0870329a4114d3d305d6fd3f87', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/MetaResolver.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/StaticPageMetaResolver.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/MetaResolver.php' => array ( 'fileHash' => '913635045fe6f900fde300e1d9857f52346a97b9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/StaticPageMetaResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/OpenGraph.php' => array ( 'fileHash' => 'c0ddc94caec8a99cc20e05e806d22c21711f36de', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/MetaData.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/OpenGraphTypeWebsite.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/StaticPageMetaResolver.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/OpenGraphType.php' => array ( 'fileHash' => 'e5ecdb4f4b73102c89acfcd57f51404788753e3f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/OpenGraph.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/OpenGraphTypeWebsite.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/OpenGraphTypeWebsite.php' => array ( 'fileHash' => '26a9768102aa47ec96111414bfeca9118a1efb54', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/MetaData.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Meta/StaticPageMetaResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Meta/StaticPageMetaResolver.php' => array ( 'fileHash' => 'dde00163015860a81c4185bf16bd54453ed15c69', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php' => array ( 'fileHash' => '26c92a5591e1be852c9eaf7f4e684822ce2f6b85', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/MetricsFormatter.php' => array ( 'fileHash' => '8a1aaf0305b9a03c4b119c0f4b2b9d1e793cb522', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php' => array ( 'fileHash' => 'ed9d1ca0cdd1eb7f8666bee01a049bb6a1d7e45e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php' => array ( 'fileHash' => 'f9f0a09ff2dd612bb682f509b87d10540ca8a7fe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php' => array ( 'fileHash' => '80804fd8e41ed4037e45ef46b1b84c1d646f1ce5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php' => array ( 'fileHash' => '0c009a6021569aadf6c12aefb5df84690ff427ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricSuffix.php' => array ( 'fileHash' => '0fd4332accc0fad631682e10036a21421ffcdbfe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricType.php' => array ( 'fileHash' => 'f09b108b910256b33c3fb6dd243b13142654c82c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Metric.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollection.php' => array ( 'fileHash' => 'b9b7aa43ada399132bddc4f3ad9988f38d66fde9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/MetricsFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/OpenMetricsFormatter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/PrometheusFormatter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/StatsDFormatter.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php' => array ( 'fileHash' => 'a0d8806ba8f4dacb84364f5d2da45336ca5134a4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php' => array ( 'fileHash' => '4605fb0d7cbf7dec8984ab5dea150987424f5dcc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/CircuitBreakerMetrics.php' => array ( 'fileHash' => 'bd6ceee348ed56b646205acde2fb3d26038d5313', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/ErrorBoundaryMetrics.php' => array ( 'fileHash' => 'dd39449eb99aedb1de7ede46af7f75936c0e5623', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringAlert.php' => array ( 'fileHash' => '4f6415a871ff6f7b684972ea3e6201544c23e0b3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/MonitoringConfig.php' => array ( 'fileHash' => '6d421ca891c8d9604eac9ae0b679e7bd436f47c5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/SystemHealthSummary.php' => array ( 'fileHash' => '5d3c95c7a52c7d5c44d555cff4cb5a768371d9a4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoId.php' => array ( 'fileHash' => 'bedb6db632b7e62b0d2e9929e1da8ceb2e6615d6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php' => array ( 'fileHash' => 'f9655526710b7d3282252071790b96e240aba0d7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiEndpoint.php' => array ( 'fileHash' => 'aa9a7439261976136730927df7b74805fec9bc1a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiParameter.php' => array ( 'fileHash' => '2ee6e18ec85b8593b9229add4a2c50d29ba5cef0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiRequestBody.php' => array ( 'fileHash' => 'a429166eb689fcb9644b3b2214523259cccadd14', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiResponse.php' => array ( 'fileHash' => '07e493dd292d768840b9155ca1e8d7da0df36048', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Attributes/ApiSecurity.php' => array ( 'fileHash' => 'c3780a8df75a6df17ba216a509a5bcbf0687f5b7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php' => array ( 'fileHash' => '6478fbf8ac14671083d7742a6900c2f1d9c37375', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php' => array ( 'fileHash' => '69f0affaddb31899a9db9a69940600cd443b8f56', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/MarkdownGenerator.php' => array ( 'fileHash' => 'e922201685c5d88d178efbb5395f09d856d026b1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiContact.php' => array ( 'fileHash' => '126d566d5ca7f0314ee6aa6cc9e9406d5ba2e5df', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php' => array ( 'fileHash' => 'd6be10e41348c42a1b0fdc160e280a31f33b0841', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php' => array ( 'fileHash' => '04b90cf72ab091b9e1252522f4501502fcc4907e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/MarkdownGenerator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiLicense.php' => array ( 'fileHash' => '908f8083109b03fde94177f1db045dbb3daa08e5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiInfo.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php' => array ( 'fileHash' => '1608e58416e8b52d33c6a0172d748e3aa461884f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiSpec.php' => array ( 'fileHash' => '0c41beb0817efe3c58adcfc758b042a199b086a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateMarkdownDocsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/Commands/GenerateOpenApiCommand.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/MarkdownGenerator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php' => array ( 'fileHash' => 'e18dafe423ea2b933c3dd9673e6a66aecada6d36', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php' => array ( 'fileHash' => '485680b9f70f000f0d41b76d6c77a8ae65d158a5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php' => array ( 'fileHash' => 'a403818ba7f8d18d584c9b6a53648844bb03a017', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalyzer.php' => array ( 'fileHash' => '48b340c62749ee2d2560e7ad15aa5411f988640d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php' => array ( 'fileHash' => 'eeb74af8675147abc5a4904c34ad0d43a80cfcc2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/PerformanceMonitoringMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceReporterInterface.php' => array ( 'fileHash' => '2301bec4ceccbfe96a0ecbdbf97b72220390c1c3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php' => array ( 'fileHash' => '88a23aaddf40defbaa9d07d49fe99f51f8e6589a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php' => array ( 'fileHash' => 'b41572e0f27fcfcb76922f349d52ae42ca8b77dd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php' => array ( 'fileHash' => '8208bff5820d779120e4820b99854827cf929daf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php' => array ( 'fileHash' => '2e8443bcc875f46fb4ca49701f9e7a92d57039fd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php' => array ( 'fileHash' => '1bfdb60e29e60d1b71f2837bfe69d7288be7eb0e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/MemoryMonitor.php' => array ( 'fileHash' => '89bc06fa4517bfb24f159d5d8e3112b8f247a745', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/SystemContext.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/FileScanner.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Filesystem/ValueObjects/ScannerMemoryUsage.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/MetricsCollector.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php' => array ( 'fileHash' => '387a1ccd782a97ad281131f5eb903924b73d1239', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php' => array ( 'fileHash' => '7e73406aa055cd20ab2afc0de585807bcdf937a1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php' => array ( 'fileHash' => 'e3085a7037c87a933af1157fd836c9ea5caf51ad', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php' => array ( 'fileHash' => 'c8b6ab817c640fcb9a4c3cab9b14c9d29252a3c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php' => array ( 'fileHash' => '3122e4abecfcc01f01a0d83e2ec8e8da89d056d7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php' => array ( 'fileHash' => '56941e951b44d73c2c3939205818d2d69e18b47a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php' => array ( 'fileHash' => '762222789556cf08f8b110319b67c9b8409be5b1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceCategory.php' => array ( 'fileHash' => 'aa391941265cb6405dad9cca9c6312669169edfc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/PerformanceMonitoringMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationStartedEvent.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceConfig.php' => array ( 'fileHash' => 'e254e13970980b30b00c79b23d0a7047b0cc193e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/ControllerPerformanceMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/DatabasePerformanceMiddleware.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RequestPerformanceMiddleware.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/RoutingPerformanceMiddleware.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php' => array ( 'fileHash' => '63ff75ed34a182fd472782f2a865f6d9627643e4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceCollectorInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Contracts/PerformanceServiceInterface.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/CategoryMetrics.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php' => array ( 'fileHash' => '787085e9c734b029fb7262d1d5da1da1168f5609', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Middleware/PerformanceDebugMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceService.php' => array ( 'fileHash' => 'e8aaaa67288f2d821422e2c89acb21ebc75b08f9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceServiceInitializer.php' => array ( 'fileHash' => '8bc44db9c67ef11cb828dbd99541ae65f5633c6e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/CategoryMetrics.php' => array ( 'fileHash' => '8e1770908bd5cb306b7375ebd8f675f62c9c8d60', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/Measurement.php' => array ( 'fileHash' => '7c345e30969cd49e2276e6c4556f837fdc553985', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/EnhancedPerformanceCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MeasurementCollection.php' => array ( 'fileHash' => '88464f68f4f3ae60a758b4ec65f71f49c4fe4991', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/PerformanceTools.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MemorySummary.php' => array ( 'fileHash' => 'dbcb14551f40086202548448a8b64d70d7817270', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/MemoryMonitor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSummary.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/MetricContext.php' => array ( 'fileHash' => '0207e67d46cf670900d495f9359e8fae51c53000', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceMetric.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/NestedMeasurement.php' => array ( 'fileHash' => 'de676c42f9092e8f7a4d0da7ee668479430fb2f8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/NestedPerformanceTracker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php' => array ( 'fileHash' => '354ad07594fb89b3701a94e75dd7d738680f74c0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceScore.php' => array ( 'fileHash' => 'd4c101f335ad5f0731584ed23327a25314e6f8b0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSnapshot.php' => array ( 'fileHash' => '2804297a2597070e5053a81ded9df9b240bdb29e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalysis.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/BottleneckAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Analysis/TrendAnalysis.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationCompletedEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/Events/OperationFailedEvent.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/OperationTracker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceSummary.php' => array ( 'fileHash' => 'da94248c11945ec893f386bf7d79c5534cacb23b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/PerformanceReporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Performance/ValueObjects/PerformanceReport.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php' => array ( 'fileHash' => '594915fab507cf49a4136f0bf1e28ed56164a94f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataMode.php' => array ( 'fileHash' => '98e5699a8cba372d6afcf443ea3301ae3e557a69', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ErrorCorrectionLevel.php' => array ( 'fileHash' => '4d7b24bba71f00cd0a472d219a2f58c4a40b0086', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeVersion.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php' => array ( 'fileHash' => '6997f1f3b83c8a87ea39f0fb764f115083ce490d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/FormatInfo.php' => array ( 'fileHash' => '97ee442a632c917339e4a90fc72ea4a92d8f5070', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php' => array ( 'fileHash' => '2f7fd088e803779cf5011d269e905796493b2aec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeException.php' => array ( 'fileHash' => '564cab2a4751e280322be38efc23cb7cd1d3ab43', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php' => array ( 'fileHash' => 'c8071d782433b7994068550084b7e8b5769b06a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeMatrix.php' => array ( 'fileHash' => '20b8cc44d3fb717f11c5595956497ed0dfd1b46d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeVersion.php' => array ( 'fileHash' => 'eb30de6c56bfebe60a4172b904968af5637430bc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataMode.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/MatrixGenerator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Patterns/MaskingPattern.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/GaloisField.php' => array ( 'fileHash' => 'ae481927b614465607954a33a62f39355630dc5f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/Polynomial.php' => array ( 'fileHash' => '745cf261565e02226e6a5f4b1089651fad32f653', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/ReedSolomon/ReedSolomonEncoder.php' => array ( 'fileHash' => '0dde6e5cb0f51a4e2459d8cf6c7827f704285711', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php' => array ( 'fileHash' => 'fb10b605f16cfc511231b70d5fd308102a8dc691', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/DataEncoder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/QrCodeBlock.php' => array ( 'fileHash' => '5d4f6f2068fdee670c40c21cf80f9fd358bac770', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/Structure/BlockStructure.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QrCode/SvgRenderer.php' => array ( 'fileHash' => '35cab2e0aee45600b08aa1ac341076abf270c776', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QrCode/QrCodeGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/ForbiddenFunctionsRule.php' => array ( 'fileHash' => '74fe3b3b1b4ab66f6fa8cd6dfad343b531b51f07', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/PreferValueObjectsRule.php' => array ( 'fileHash' => 'e2b0f8f455c96288a0b107e1cda9eceb582db0ce', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/TestRule.php' => array ( 'fileHash' => 'f5835147d80267561a41ccc162166070e73112a2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseClockAbstractionRule.php' => array ( 'fileHash' => 'a356d5cd672fd8942c1843fb74137a3dd9723913', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseDateTimeAbstractionRule.php' => array ( 'fileHash' => '7dfb9d1d6dc32ea763e67a90a5363c97bafe3d18', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseFrameworkAbstractionsRule.php' => array ( 'fileHash' => '0de6940d93c49bc6090af857b5599fe83806d065', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Quality/PHPStan/Rules/UseTimerAbstractionRule.php' => array ( 'fileHash' => '038a81ab81722c6e9ab8e71c987f8cddd20e749a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php' => array ( 'fileHash' => '8b1eb09a47b0a1e69b89e6fd228545aba8fb6579', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBus.php' => array ( 'fileHash' => '3e2101553ff41500604090a100cedbe94b861d7f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/DefaultQueryBus.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php' => array ( 'fileHash' => '406fa31ca566d70271516fb0a19dd40510d22f13', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandler.php' => array ( 'fileHash' => '3405dbd5a76008fa728db803c6d856eb510f576e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerCompiler.php' => array ( 'fileHash' => 'b31a5467b0c9504eb79ce9e971a86fdf5e6f4e3d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php' => array ( 'fileHash' => '58f09afad64ca4c3645cca7801456610b3f9a802', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php' => array ( 'fileHash' => 'bf201fb19fe7fff3c4aef9a328f3cd4baf5484ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/Queue.php' => array ( 'fileHash' => 'bd48523854050c211569c31e4ba0f7c21eeb016f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregationInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReporter.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/Handlers/QueuedLogHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Mail/Mailer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php' => array ( 'fileHash' => 'eb651591956efaf1915f6d725abfe39494cee940', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php' => array ( 'fileHash' => 'c9c29281a534ce7aa0ac970394f28f78c22021e5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGenerator.php' => array ( 'fileHash' => '355be435eed2209d611d7477e0ac3445407a9731', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureTokenGenerator.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Database/SimpleIdGenerator.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/AesEncryption.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/BasicEncryption.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Encryption/EncryptionFactory.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SimpleSessionIdGenerator.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Http/SimpleRequestIdGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Ksuid/KsuidGenerator.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/NanoId/NanoIdGenerator.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGeneratorInitializer.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Random/SecureRandomGenerator.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Random/TestableRandomGenerator.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenGenerator.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGeneratorInitializer.php' => array ( 'fileHash' => '8fd0f40738a0d7b684a7f0503b0aa24892600c5d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Random/SecureRandomGenerator.php' => array ( 'fileHash' => '7a51f5205b2a39293c33959362f49781e2e0154d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGeneratorInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Random/TestableRandomGenerator.php' => array ( 'fileHash' => '91570b880193e8ff4548b78f234d17ce22d2207c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php' => array ( 'fileHash' => 'fb77899e6770a8f097d445f0ff8103cfc124199d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitConfig.php' => array ( 'fileHash' => '200c7259cdddaaca1aa9d88bf9c2661ba16f5259', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimitResult.php' => array ( 'fileHash' => 'b94f2418369d3105c70dd073d589385316eb55c7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php' => array ( 'fileHash' => 'a181fd54a7d5206651ccb1a296904d71458c20de', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RateLimitMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php' => array ( 'fileHash' => '3e79b1196f9b36a23da729d025910d9b65e9966b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php' => array ( 'fileHash' => 'be188813dec80309d25ea5ded76971cb18a8d1b9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php' => array ( 'fileHash' => '929595c92203e7f22a50650e08e67f88fc9eb589', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php' => array ( 'fileHash' => '3a30c09596d4d6b93e6c85a15d46621afba53bb2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php' => array ( 'fileHash' => 'c59e62bec0a63f5596d05c8eef3435cf7cf344a0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TimeProvider/SystemTimeProvider.php' => array ( 'fileHash' => 'd48c1072b1c777b99508359c3e4d71adfd6f2bcb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TimeProvider/TimeProviderInterface.php' => array ( 'fileHash' => '1915d6c4342d2656453e1b52b7c7c6ea48473469', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TimeProvider/SystemTimeProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/TokenBucket.php' => array ( 'fileHash' => '0998293110b2a02575fe2a8eb43685638e5a677d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/CacheStorage.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Storage/StorageInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConfig.php' => array ( 'fileHash' => '23f7a18fc4f2462c935036debda94b7afb4e2340', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnection.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisPoolInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnection.php' => array ( 'fileHash' => '39356edcc41aeb10746646a9d1ddbdafcc8c2583', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionException.php' => array ( 'fileHash' => '9dc3e6f931c511d84829620538f4ae423401815c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionInterface.php' => array ( 'fileHash' => '747cd75df3f56c89e6af7fe3f2e823eff413043e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/RedisSessionStorage.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Logging/LoggerInitializer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/QueueInitializer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnection.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisConnectionPool.php' => array ( 'fileHash' => '77d6649a0008d6f91fcd8a56466ca6ad5d930075', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisPoolInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisFactory.php' => array ( 'fileHash' => '05c4c69a0aa19416e3d4ca36244f4bad6aa3f340', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Redis/RedisPoolInitializer.php' => array ( 'fileHash' => '717cc7a9cb9d288662275057c9dff658b22e61cd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php' => array ( 'fileHash' => 'f5f501a9c2041cffa5d7eaf215d116bee32553fd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php' => array ( 'fileHash' => '82ec8669055d9fd79faf10e264c2e4d9302d160c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php' => array ( 'fileHash' => '264ca1052037aea62003d92f9815788ebbabbbdd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php' => array ( 'fileHash' => '42f61567788320ab03c374c6ef781d6e1a5b8377', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/AttributeCache.php' => array ( 'fileHash' => '30a053d7dad0814411a995822aeb1714468e2832', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionAttribute.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php' => array ( 'fileHash' => 'c77db83ee5bdd0607fa2e5871fa88a39a35216d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php' => array ( 'fileHash' => 'b3f491a292fe3d2cb0d98a305acf7161aadf9e9b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php' => array ( 'fileHash' => '75d2df3ea89a4efe2d4526c5e7c1e69cb00509a0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php' => array ( 'fileHash' => '1788b3a414d70e1fed4570a80ec6b91debd2b449', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php' => array ( 'fileHash' => '7de0ad6f44eb39f00b0db3215d87779d0f556f71', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/AttributeCollection.php' => array ( 'fileHash' => '4ff84f36e9fda3411aeee4524d84ebd03a16d6b4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/AttributeCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/AttributeReflector.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Support/AttributeHandler.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/MethodCollection.php' => array ( 'fileHash' => '884610c4e2f8ca4f6168298d36b0e470af6193c3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/ParameterCollection.php' => array ( 'fileHash' => 'e329721071eb01d1c606c3772d6ee3aa7de82752', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ParameterReflector.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/PropertyCollection.php' => array ( 'fileHash' => 'd5f1124a66dfe2593a070118f2fbc3e4ce595c0d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/PropertyReflector.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/AttributeReflector.php' => array ( 'fileHash' => '1b6f22916f498415ed4990a6d74ddd1932a8d642', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/CacheManager.php' => array ( 'fileHash' => '38923fc3108f51ee2db7921ac0d487836021a106', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php' => array ( 'fileHash' => 'a7c89b57a773343baf9d928a16f4295172cfd452', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/EnumReflector.php' => array ( 'fileHash' => '38887e1c76d2c7b86ba91bd4bf2622d68f8f631e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/InstantiationReflector.php' => array ( 'fileHash' => '9bb14a83a1f4fd1385f9934d903079dcea138335', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php' => array ( 'fileHash' => '4805a5ba21a70d4fdd1a5875e9f7f6bed9244802', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ParameterReflector.php' => array ( 'fileHash' => '054906d3cbf35c592a3b49a53c5d3bf635bfe389', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/PropertyReflector.php' => array ( 'fileHash' => '45e2ab78ef16d95689b8973779e628a724f202fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ReflectionCache.php' => array ( 'fileHash' => '651e6fcfa40db0feee83fb2d8cade10e73f5b1f2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/AttributeCache.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MetadataCacheManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionAttribute.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php' => array ( 'fileHash' => 'a5caaad505cda586fedd53ce07571d1496c844d1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/LazyReflectionProxy.php' => array ( 'fileHash' => 'eb1d28c42708c446cfb5179aa304908b0c68e0d0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Monitoring/ReflectionMetrics.php' => array ( 'fileHash' => '299b350072c3bb07e89a86f1f76f3e44f8205a03', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionCache.php' => array ( 'fileHash' => 'a3b2b78279d115f1b69918a2054a6289c3058457', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/ReflectionProvider.php' => array ( 'fileHash' => 'd31324fbd9830b57b6e002d5e6e0fbd6d932ce0b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilderFactory.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php' => array ( 'fileHash' => 'e6f4ce05d213817adccf7e49122465e71d2acb0e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/MemoryAwareCacheStrategy.php' => array ( 'fileHash' => 'a64b1aa15ac4a019786a0f6047b00f92d99a45ee', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Support/AttributeHandler.php' => array ( 'fileHash' => '121b3c8d57409ea74ddb04c3831eb60ec64b6dcb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionAttribute.php' => array ( 'fileHash' => '694d1dddf5666cafbde0a77a2801dcc9739ff39b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/AttributeCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/AttributeCollection.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/AttributeReflector.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Support/AttributeHandler.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php' => array ( 'fileHash' => '3463c525e1cb70352e7a4d5d6d9c79b42db48920', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/ClassDiscoveryVisitor.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ReflectionAwareVisitor.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ReflectionContext.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Strategies/CacheWarmupStrategy.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php' => array ( 'fileHash' => '128ec3faadcf8c515dc0c3500c441baae516ed40', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpResourceMapper.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/CodeQualityTools.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Async/AsyncReflectionProcessor.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ClassCache.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/MethodCollection.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ClassReflector.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionClass.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionParameter.php' => array ( 'fileHash' => 'abdafa9ced64786f9ea1bb969c7ad394f69dfa9e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/EventBus/EventHandlerMapper.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareDependencyResolver.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/McpToolMapper.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/QueryBus/QueryHandlerMapper.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/BatchOperations/ReflectionBatchProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Builder/ReflectionBuilder.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/MethodCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Cache/ParameterCache.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/CachedReflectionProvider.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Collections/ParameterCollection.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/MethodReflector.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Contracts/ParameterReflector.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/WrappedReflectionMethod.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/MethodParameter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryAttemptEvent.php' => array ( 'fileHash' => 'b74d1e496327b1b74758c24e548a204dab02df22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php' => array ( 'fileHash' => '9fa0261d5f6bdaa896698f8493fa8bebe0a3f841', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php' => array ( 'fileHash' => '77b9167cabcd81257f2b5b4ca5d561f04abf32dc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Metrics/RetryMetrics.php' => array ( 'fileHash' => 'd975f79a0045b8fae7c23750dc6d7a758e546e11', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php' => array ( 'fileHash' => '5bbe823c6a67e40778353857707b586dba0ac92c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php' => array ( 'fileHash' => '270c0d1025d4c98a143d6351e06aa75012dec0da', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryResult.php' => array ( 'fileHash' => '2468a154f4878ca2a3acc73124a2d0b19f1081ed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetryFailedEvent.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Events/RetrySucceededEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryStrategy.php' => array ( 'fileHash' => '69f8b5f51b6daada5686c81f12f49bb0788a8181', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryableOperation.php' => array ( 'fileHash' => 'c7b8796e5b635542f3e721954c440e76c28be752', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/ExponentialBackoffStrategy.php' => array ( 'fileHash' => '4429ac51f1fdbf824bc3646e20dd73d95a7a1aa4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/HttpClient/Middleware/UnifiedRetryMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/FixedRetryStrategy.php' => array ( 'fileHash' => '6acd46632d54ac1fcc2b42d14cb75c90f54de1a8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Retry/Strategies/LinearDelayStrategy.php' => array ( 'fileHash' => '61832af841800ef288b8f8898f31fa513eaf5f11', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Retry/RetryManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ActionResult.php' => array ( 'fileHash' => '2ec409911db30b66d1636a19d4ef03333cbc2314', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php', 19 => '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php', 20 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 21 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 22 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 23 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 24 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 25 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', 26 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 27 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 28 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 29 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 30 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 31 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 32 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 33 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 34 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 35 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 36 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 37 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php', 38 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 39 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 44 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 45 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 46 => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', 47 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php', 48 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/FileResult.php', 49 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/HtmlResult.php', 50 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php', 51 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/Redirect.php', 52 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', 53 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php', 54 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php', 55 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php', 56 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 57 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 58 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledPattern.php' => array ( 'fileHash' => 'c1adbe50c64f337968b5387e15c4f8f1d7aafb48', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledRoutes.php' => array ( 'fileHash' => '5f26a328167b14c88a6d288269af1b75ffa5a122', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkAgents.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Mcp/Tools/FrameworkTools.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/OpenApi/OpenApiGenerator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/EmptyCompiledRoutesInitializer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php' => array ( 'fileHash' => '6e3ab900ef24f50881cd90d18a6d9f4fc9317e7c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/EmptyCompiledRoutesInitializer.php' => array ( 'fileHash' => 'bb1337832f42aa85f406e690f5515b011508346b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Exception/RouteNotFound.php' => array ( 'fileHash' => '2cc7e9e415d84e8a325fe6602810be41c83f52d8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Exceptions/ParameterResolutionException.php' => array ( 'fileHash' => '817669d2c3f836e1f685b8a25fa3d7cae66baba2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Exceptions/UnknownResultException.php' => array ( 'fileHash' => '5a5a9aafd8e4278bb0d1c7af351fdfcd2ec84e40', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php' => array ( 'fileHash' => '4ade6b20298777881a36eb240ab7e148da839aa0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php' => array ( 'fileHash' => 'f16fbcc40cec087a7f2ab0db2bb77f2df011d86d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/NoRouteMatch.php' => array ( 'fileHash' => '43fdfe5160c45f58303ba1b20a62b60c083f9f50', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php' => array ( 'fileHash' => '8d2e7846ea36aad857b98fca3e318b8896e5a2e9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/PropertyValueConverter.php' => array ( 'fileHash' => 'be74316719dde2543f63c399575e502c1f77e3bd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ContentNegotiationResult.php' => array ( 'fileHash' => '202332249a9fd38462f81fbc4c5b626f7faf0e78', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/FileResult.php' => array ( 'fileHash' => '1c7d6650843af64aae89e76c62b4f4d5df3b34c5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/HtmlResult.php' => array ( 'fileHash' => '029419499177f13670376fd50b4b5c96f779934b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/JsonResult.php' => array ( 'fileHash' => 'fbd8f310c0321a298a144a1b9b36268577ae9d0b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 19 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Api/ClientLogController.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/Redirect.php' => array ( 'fileHash' => '1cd8ac5a9719b3958e3b29c3d4a91d37cd524406', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseEvent.php' => array ( 'fileHash' => '1a5dd5abf141cf4efcfa8b8ebcf984b9e2ded4fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/SseStream.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResult.php' => array ( 'fileHash' => 'b101f21797a39e3604e7dada218ee4e96ca22e02', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/SseResponse.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/SseResultWithCallback.php' => array ( 'fileHash' => 'f12f4b5d7541d9bc10e77a24fe3ab5086cb7857e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/ViewResult.php' => array ( 'fileHash' => '3c06947bf2a71a969dc93c82ca4048c05bd68a1b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php', 6 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php', 7 => '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php', 8 => '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php', 9 => '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php', 10 => '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php', 11 => '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php', 12 => '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php', 13 => '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php', 14 => '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php', 15 => '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php', 16 => '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php', 17 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 18 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 19 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 20 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php', 21 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Middleware/ErrorBoundaryMiddleware.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Result/WebSocketResult.php' => array ( 'fileHash' => '8f9ba781920f40793356b6e9dc2a498cf48aea6e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Responses/WebSocketResponse.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ResultType.php' => array ( 'fileHash' => '82599fa9dcfa844af38675c6fa7b8603ec0b6ab3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/GenericActionResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteCollection.php' => array ( 'fileHash' => 'eec8c4def071318c5c861f58a9bf5791f7bcf7e0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php' => array ( 'fileHash' => '2dd9c7d03ca38f306040032435f7edb7b93662eb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/Router.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteData.php' => array ( 'fileHash' => 'becf01ba17c980acb507a8b024f0ed09d368cda3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/CompiledPattern.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php' => array ( 'fileHash' => 'b70879d5f5e0930bf77c89b7855aed12c36b5ca2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteMatch.php' => array ( 'fileHash' => '7151916383c72cc0424410efe4c50fa473fd6df7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/NoRouteMatch.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteMatchSuccess.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteMatchSuccess.php' => array ( 'fileHash' => '424ce272656ed8e7991dc40ed812cb429d631ee7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteContext.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteParametersInitializer.php' => array ( 'fileHash' => '7cf3e295764dd2da68c9b1f9fd0b9426f49a2c05', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php' => array ( 'fileHash' => '648192434385a77b91e2c4d8a1a45f9fa33db365', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ResponseGeneratorMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/Router.php' => array ( 'fileHash' => '6baec81b273929d25f2f921827c757387e8177d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/RoutingMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/WebSocketServer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterPerformanceMonitor.php' => array ( 'fileHash' => '9704897257f5b18f289ba34bb928e3a30537a45a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/RouterSetup.php' => array ( 'fileHash' => 'bf4dce8b68624f600a4ffe76296ac95b8f82745b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/UrlGenerator.php' => array ( 'fileHash' => '46fc46ba3ee857f7608f22e95999d54d75ce7093', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/MethodParameter.php' => array ( 'fileHash' => '8a865ed8547ca57896fdd1f462ac9a79c05c9e56', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterCollection.php' => array ( 'fileHash' => '81e590010e99b909894e4a57d71f690201971f62', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/HttpRouter.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteDispatcher.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/ParameterConstraints.php' => array ( 'fileHash' => '0cd50835a8b4168b4e689ad06ece9c1bc56125a7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/RouteParameters.php' => array ( 'fileHash' => '1e1a100bf28d6c4753fe975902e00368f3176bf3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/HttpRequest.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Request.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteParametersInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Router/ValueObjects/SubdomainPattern.php' => array ( 'fileHash' => '1c35d13cbe0bd0318e7894b8ad6c00e524e5398f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/BulkIndexResult.php' => array ( 'fileHash' => 'f4603d6e99806e17c888a58edee8c1cd8cc896a2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php' => array ( 'fileHash' => '2a4bfc4e74dca683def17a1bbc45016c3904e577', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchConfig.php' => array ( 'fileHash' => '32fbf2852528af86231e9a67c165bcbb041fc25c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php' => array ( 'fileHash' => '1b3a53d6465c314ebe484259b5873603326cc77f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchDocument.php' => array ( 'fileHash' => '725fd57db1f29065b5c80782c48ca5c9a8ee7bcc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php' => array ( 'fileHash' => 'f49bff91f3081ad3bf1c8aafe9213ffc2ca771d6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngineStats.php' => array ( 'fileHash' => '48854235b21a7eabdfd8c00d13c768b8c9c585e7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php' => array ( 'fileHash' => 'bdfe28d80bbc2510f6d5654d0dfb3e201f7500ff', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php' => array ( 'fileHash' => '9bee8838886987c38cf7183a0d19e634f7c5f046', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldType.php' => array ( 'fileHash' => 'ee45751992f247875842ca896d245bb272803299', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFieldConfig.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php' => array ( 'fileHash' => 'aabc0e6136d472ada2bece59d832dfc557f98c42', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilterType.php' => array ( 'fileHash' => '9fa326d7454e229cf0d8b3cfbcf81b538966cb6f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchFilter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchHit.php' => array ( 'fileHash' => 'a3691687a70a5946093c0bef89620411b550f0c0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexConfig.php' => array ( 'fileHash' => 'df66d60e7a9a759d053e7eba6ed82532dd05dcb5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexManager.php' => array ( 'fileHash' => 'a55add44e2a1ecfc9b09a0c7fc437149b925f198', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexStats.php' => array ( 'fileHash' => 'e1392d5f93ea728d9456923c1b772270b7525805', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseIndexManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php' => array ( 'fileHash' => '0b430db83f93c3bf6f67b166ea730fa4d940cc4a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEventListener.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php' => array ( 'fileHash' => '5121826260d11d42ab38d71fbccd26392d59b1fd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php' => array ( 'fileHash' => '9e5a60bb4ac9c8b87e51c537a711afc4ebdc728d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchResult.php' => array ( 'fileHash' => '11fda77bee5e02c1376d3f69fc8cc7c9e3d1235c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchService.php' => array ( 'fileHash' => '2f8ce0625d4c949165ee47845428042ddebfa765', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php' => array ( 'fileHash' => '00d397bce6da94ea0c2eb8c2ca18107766b6ab7c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQuery.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortDirection.php' => array ( 'fileHash' => '727a080299ab3830f2be4f466543f014b65bfc83', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortField.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortField.php' => array ( 'fileHash' => '7e8230b9faa6107b80df80de67a29f84096b7a94', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/Engines/DatabaseSearchEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchQueryBuilder.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchSortBy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php' => array ( 'fileHash' => '0f4d794b8087b89daeecc5d622b36db7970374ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMapping.php' => array ( 'fileHash' => '8f9e8d04ce6f474a90e1cdce77a3c10f71822a2d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableAdapter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchableMappingRegistry.php' => array ( 'fileHash' => '1ffdc4dc18ecd1769012e828dc5b2ddd2d50e961', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Search/SearchIndexingService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfToken.php' => array ( 'fileHash' => 'dd9b89a30975071b4c263ec994e4554943fb4565', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/CsrfMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/FormDataResponseMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenData.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenData.php' => array ( 'fileHash' => 'c34e512d7ed30f2431b4635df6db554ed2ab5fb5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/CsrfTokenGenerator.php' => array ( 'fileHash' => '935202f03c17c9f65744f3c8cadd4228f1a85f59', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/CsrfProtection.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Session.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Random/RandomGeneratorInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php' => array ( 'fileHash' => 'e8307332c03e5656571806583480955f5ac7f033', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php' => array ( 'fileHash' => '911637551683bb8e0139ed14992360c2c380674d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php' => array ( 'fileHash' => 'e780088c1aa0cf1e54b3093c33480f9738ddb2e0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/Migrations/CreateSigningKeysTable.php' => array ( 'fileHash' => '69e333f34823c6a5edccaa4269ea8a37dccd1177', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php' => array ( 'fileHash' => '67e012a9a39b73bf9c3bf9077ed0c4a135e20c2c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/VerificationResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php' => array ( 'fileHash' => 'e7c88e582499149f27cc395f75ad2ae0618e3d73', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php' => array ( 'fileHash' => 'a1239e5aedfd031cf6a261c4c318364bbc42d7ec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php' => array ( 'fileHash' => '3a037447cca08dc4a013ff03c387c2e670595069', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php' => array ( 'fileHash' => '708f4f4f96b56d10c016f72a135e841bcfd10bd2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php' => array ( 'fileHash' => '00bde000f9f7ac9b28f1f0579a8d5e34657e2da8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php' => array ( 'fileHash' => '337f9ca587d7645f90eac61137729ca5741663a1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningAlgorithm.php' => array ( 'fileHash' => '33a0a9547a517d92156c6a0d0321e78172280c24', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSignature.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningConfig.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKey.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKey.php' => array ( 'fileHash' => 'e0db51b7f97363fd4168f3d22d1ba672cece5b22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepository.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/VerificationResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepository.php' => array ( 'fileHash' => '6d65757db0bc11e1af1dc5f7dfb5235be14dca17', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/EntityManagerSigningKeyRepository.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/InMemorySigningKeyRepository.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningInitializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningKeyRepositoryInitializer.php' => array ( 'fileHash' => 'fcdb2f6428aa68c274d60fd59642eabfc198e9fc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/SigningString.php' => array ( 'fileHash' => '1935af31a722f32c845fb87fd24409543b8610e2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/HttpClientSigningMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigner.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/VerificationResult.php' => array ( 'fileHash' => '1b75ee568cc6d75d2c6874b4002e7eeb4be49f4c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestSigningService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Security/RequestSigning/RequestVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/DeserializeException.php' => array ( 'fileHash' => 'b765d6a1dfea743b2abaaa2b6cf296fbb7fb09af', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Serializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/SerializeException.php' => array ( 'fileHash' => 'c9b0cb45d54514f84b8880329d38f5a7e05a68c3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Serializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/SerializerException.php' => array ( 'fileHash' => '3929e5e2ec9a4791655bb8a9c6b54a8f433b58f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/DeserializeException.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Exception/SerializeException.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Serializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php' => array ( 'fileHash' => 'b0fa914f2231085fffcfdf86b632d7572ffcd53f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializerConfig.php' => array ( 'fileHash' => '6762a6d493270c3516d24469ade927c297a0278d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php' => array ( 'fileHash' => '96993a97d98997a966946d7ba2361aac6243930c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializerConfig.php' => array ( 'fileHash' => '4c4037e4d70ec183c1d2f7a259af39e739d8afb3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Serializer.php' => array ( 'fileHash' => '384cca7a3cec3a03f37fcc589213990adddf0f2c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php', 5 => '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/ApiVersioningMiddleware.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Metrics/Formatters/JsonFormatter.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/FileQueue.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Queue/RedisQueue.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Reflection/Factory/ReflectionCacheFactory.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Json/JsonSerializer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/Php/PhpSerializer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Serializer/SerializerFactory.php' => array ( 'fileHash' => '4dc6de9d948d367c3b52ec2ce51f80989f034e22', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapEntry.php' => array ( 'fileHash' => '39ecc213258721152832824936b036350b93bead', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Sitemap/SitemapGenerator.php' => array ( 'fileHash' => '7265a0ecf2a19c7cb3c1a77aaa9c58c687fc993c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanAggregator.php' => array ( 'fileHash' => '288b36a8802111c1a5ed7722977dc78037d22a61', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanResult.php' => array ( 'fileHash' => '2a90384c66106794f68771b967a0ab30279727d1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingAggregator.php' => array ( 'fileHash' => '02da6122b128350d880bedf412bb44eba0e1a576', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingResult.php' => array ( 'fileHash' => '53ecb6cd7ffdeb11de9d8132a01178dbe34471d8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericAggregator.php' => array ( 'fileHash' => '2ba690e32f6c33d860a998ceb9abd2f93f7916ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericResult.php' => array ( 'fileHash' => '55455a8b7d54b8e54c1f5cf9ce79083ba836f515', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php' => array ( 'fileHash' => 'fa010dd39b4faff43e86c7d91557f5d86a409dbc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitResult.php' => array ( 'fileHash' => '58ebbf1d365343d5cedb56c189ec3ba4e14e4d3c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/SlidingWindowAggregator.php' => array ( 'fileHash' => '4aded37376bb9976d099cffa115ec298127c715a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericAggregator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php' => array ( 'fileHash' => '2edf3b665525b6c0f773326b418d36756a98eb43', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php' => array ( 'fileHash' => '4853aca4a03cbb5d6dd29b080f48c54ebe88f6ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindow.php' => array ( 'fileHash' => '97583afb43fe592e5b9aaa42835aa9188da96a26', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowFactory.php' => array ( 'fileHash' => 'f25d68a5a2a7c30d47710a5339b28d439250e143', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/Examples/SlidingWindowRateLimitExample.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/RateLimiterInitializer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindowStats.php' => array ( 'fileHash' => '5b417a6337ffeea89d156ea3554429e67dcd56fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowRateLimiter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/RateLimit/SlidingWindowTokenBucket.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/SlidingWindow.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/WindowEntry.php' => array ( 'fileHash' => 'a91d56f5944729ae4814d635ae9f70d241c9d178', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/BooleanAggregator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/CountingAggregator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/NumericAggregator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/RateLimitAggregator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/Aggregator/SlidingWindowAggregator.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/CacheBasedSlidingWindow.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/SlidingWindow/InMemorySlidingWindow.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionRegistry.php' => array ( 'fileHash' => '1e36bbd56badbbee1109ba73a6e2a51941701065', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionResult.php' => array ( 'fileHash' => '508448c4c272f921ddabcded36e85dc7c931ba84', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php' => array ( 'fileHash' => '65599bdd952283e52545789203efff164723e842', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php' => array ( 'fileHash' => '52a6cc47ad94b5e3e8f6fe75b029c3f7ba1bfdf2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php' => array ( 'fileHash' => '550aee068286defb25718cffd517313b6f8dc977', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php' => array ( 'fileHash' => 'e8a53e1c7b76fdc4a6e03821e5cfb6a228169028', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php' => array ( 'fileHash' => '85452e40c028104c74313a82be69a0930c96c8d3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php' => array ( 'fileHash' => '281e63f55ad6dc08304f0029bbdf3c12eef3f835', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkCommand.php' => array ( 'fileHash' => '2e47f96906050652434aee9b818777070065ac1e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php' => array ( 'fileHash' => 'f7c1efd37cf8a1786489a70971908480ff6afeb4', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php' => array ( 'fileHash' => 'df1387e8fc50a09fd0a05d4df41e90b45687ebda', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php' => array ( 'fileHash' => 'b1eecc3151f25424109c1136a5c18b3d75561ae3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php' => array ( 'fileHash' => '0ea2b9725f1f79cea7e287158044a813176435f4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php' => array ( 'fileHash' => 'b8278c59edb64ada1a4f2f11ccb7d1853aa65d36', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php' => array ( 'fileHash' => '06fc47938bb124241d33f232fb78bb100f184c03', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartLinkToken.php' => array ( 'fileHash' => 'cd6e7ff43c18ffa1a73a7bb14b25911f81824261', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php' => array ( 'fileHash' => 'b244d2accaae18fab5a831a2ba85dd59c8816a83', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkInitializer.php' => array ( 'fileHash' => '359cb2dd68dab94fc69bb59b2ca7f9b46dff9efb', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenAction.php' => array ( 'fileHash' => '2f4d8fe7ab13cc88be0df3ddffe99c9585de900a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/ActionRegistry.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DefaultActionRegistry.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/ExecuteSmartlinkHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/SmartlinkData.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/TokenConfig.php' => array ( 'fileHash' => 'b2883e98f2dbe4496c4d435321ce18d73ea2f05d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/DocumentAccessAction.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/EmailVerificationAction.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/GenericDataAccessAction.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/PasswordResetAction.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Actions/SmartlinkAction.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkCommand.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Commands/GenerateSmartlinkHandler.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/SmartlinkService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php' => array ( 'fileHash' => '47f7fbd439c7930dcde3fe03ec7afef30b3ecea9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php' => array ( 'fileHash' => '35e40483958c91db083979d33527adf6c8a4dcf7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/SerializableState.php' => array ( 'fileHash' => 'ee2b4d8669e2eaa25bc6cc4f48a5bd9eb3c57537', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerState.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManager.php' => array ( 'fileHash' => '8af68810335a82408eb582e3e3f16132105996d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Monitoring/AdvancedMonitoring.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerFactory.php' => array ( 'fileHash' => 'ee6ce729fac498d9b00cbea28a8d73992f626f4a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/Async/AsyncErrorBoundaryFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/ErrorBoundaryFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManagerStatistics.php' => array ( 'fileHash' => 'e86cbce51fd63b907fd7b8587c2cc2f5b0eeec21', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorBoundaries/CircuitBreaker/BoundaryCircuitBreakerManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/CacheBasedStateManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/InMemoryStateManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/StateManagement/StateManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/GenerateStaticSites.php' => array ( 'fileHash' => 'f11288a65696e508d44586312e6fca8c6ccd8982', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/RouteCollector.php' => array ( 'fileHash' => '64eeaa4acc4d21e5f7e098bcba17a17238510fc3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticPageCollector.php' => array ( 'fileHash' => '600e57c3d92e176a02501d8a617cc007dec0aec9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteGenerator.php' => array ( 'fileHash' => '01c7cb57122178276a9f99dd3a77d01e5d28e7c3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/StaticSite/StaticSiteMapper.php' => array ( 'fileHash' => '1177f708e7f3c347d6dbda1768f573c768e74fc5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/DocBlockParser.php' => array ( 'fileHash' => '6eb654375829bcb176047fef56b3c79cd34bf248', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php' => array ( 'fileHash' => 'd3ea900acaca06a50b6dc760022b153776233d86', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php' => array ( 'fileHash' => 'da2e78daff5317246cfdab5f31a53038bbcb379b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php' => array ( 'fileHash' => '8cb84ed24712a20b8bdfcea2409f5a993d6f1af0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php' => array ( 'fileHash' => 'ea2ff9f59fa420426e5058a17d87cec5ae021a53', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php' => array ( 'fileHash' => '831968ef5649e70443d5b43c252ca8ba12f0c614', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/FileHighlighter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php' => array ( 'fileHash' => '0433185c20d675ca695f2c123274256a0717807c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/ExporterConfig.php' => array ( 'fileHash' => '7685068bcf0036773e5d8a945d935eea72cd2562', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/TelemetryConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Config/TelemetryConfig.php' => array ( 'fileHash' => 'f4d11a53f296b128cf26521baa409f4bc5bab3cc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php' => array ( 'fileHash' => '061a033aa34c9a6df03625761da55cb50bce8ac8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php' => array ( 'fileHash' => 'bee95a8e45b88dbb69197f8c00606440e4caf4f0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/TelemetryExporterInterface.php' => array ( 'fileHash' => '3015715c8d5f4ae51daf801a04b515fe8a2d6a69', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php' => array ( 'fileHash' => 'cf9293045fdffc5d9bb48654756f6a49e2aecb30', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php' => array ( 'fileHash' => '0385805dceaab623c852966582068a1b2b54d5e2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php' => array ( 'fileHash' => '3bc76ce8e81f030a9d99f76dff058a532819e4e3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/TelemetryContext.php' => array ( 'fileHash' => 'ee342cc68a40cd7bb961e907b886b8daa76c4cb4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php' => array ( 'fileHash' => '5b3b5544dcb05037001fd4ac661bab753fccef25', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Adapters/PerformanceCollectorAdapter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryDatabaseMiddleware.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Middleware/TelemetryHttpMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/OperationHandle.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Event.php' => array ( 'fileHash' => '0f418e65614b849ec93f983965d94e87486b9f83', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/TelemetryExporterInterface.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Metric.php' => array ( 'fileHash' => 'f87beeb726e7eb782eef4ec59db40a0c2ff974e6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/TelemetryExporterInterface.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/ValueObjects/Operation.php' => array ( 'fileHash' => '7e1ffb915d92bb41d4f1889194d156fe47a527f2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/FileExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/PrometheusExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/Exporters/TelemetryExporterInterface.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/TelemetryContext.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Telemetry/UnifiedTelemetryService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Parser/DomTemplateParser.php' => array ( 'fileHash' => 'bed7341a7dee75429ecd9cc408a104a3f6220b8a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/DomProcessor.php' => array ( 'fileHash' => '7a43532ba93dc24636cf29c5355cc46c13a1c3ae', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php' => array ( 'fileHash' => '8d3a51b7caf6b0ee72834347e9a3e1652de8f0ba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/StringProcessor.php' => array ( 'fileHash' => '23b6e8d5ea04244187dc4dfd59c54fc5a7d7050f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/ProcessorResolver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Template/TemplateContext.php' => array ( 'fileHash' => '9cea46fe2aec4e12e4e041c7fb64f3842677ad51', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailContext.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Email/EmailTemplateRenderer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/PasswordResetEmail.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Email/Emails/WelcomeEmail.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/DummyTemplateRenderer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/DomProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/StringProcessor.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/SmartCache.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedDomProcessor.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 38 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 39 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 40 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php', 41 => '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php', 42 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 43 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Contracts/TokenizerInterface.php' => array ( 'fileHash' => '2b508967afd3862ec25a7dec9a007347bf125ec5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php' => array ( 'fileHash' => '19b63a9f2e7a98f6cc6c995ab7cf3bc4689e9975', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php' => array ( 'fileHash' => '5bfdf3976620db6a8b3558782ddb431838ca0d93', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php' => array ( 'fileHash' => '44c6218c8ed364d70b178d5f42a6c197ddfc1c17', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php' => array ( 'fileHash' => '45bff63ccb7101a345c72ee16d148eb67b56820f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/DiscoveryState.php' => array ( 'fileHash' => '0d1ed83b5c2f517ea2dd388e0920ea3c0a4f601a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php' => array ( 'fileHash' => '5a7116e0a0a4aa4dcc0aa559589ee26540f24d4c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php' => array ( 'fileHash' => 'ba5caacb7a4294b3f8292996bf908312fa4ab717', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/FormatterInterface.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/SyntaxHighlighter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Contracts/TokenizerInterface.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/Discovery/DiscoveryTokenizer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenContext.php' => array ( 'fileHash' => '2576217e019ddccd15e80db80dbcd0dcacde62bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenContextAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenType.php' => array ( 'fileHash' => '100149f51cabd2d7bec71c1fd26026f46a585976', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/ConsoleFormatter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/SyntaxHighlighter/Formatters/HtmlFormatter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/PhpTokenizer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/TokenClassifier.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/Token.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Tokenizer/ValueObjects/TokenCollection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpCache.php' => array ( 'fileHash' => '4a298c14c1c122a7e60c42fc5b91ec7cc5b5a475', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpConfigurationValidation.php' => array ( 'fileHash' => 'ed1bc48842fae3c863139135ea93db6ededa0633', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php' => array ( 'fileHash' => '63766b3a4b1776dbfeee1fa6f21eb6caab6aa4fb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php' => array ( 'fileHash' => '27783e5b588f530e3a686f314b7de2fd7b756473', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpQrData.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecurityLevel.php' => array ( 'fileHash' => 'f7df878a33619b2891584d6fd66e1efb0fc6f73a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpSecret.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php' => array ( 'fileHash' => '84d3d69510f75377f87817267f237162be375a25', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpVerificationResult.php' => array ( 'fileHash' => 'c13747435867f0f100050da41abe7e1078ed81bc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Totp/TotpService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php' => array ( 'fileHash' => 'e118628d2f55302ded57df822e609e572f8186b8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php' => array ( 'fileHash' => '2c9aa72c04bc526a11dd498d1a8a2724963cc089', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php' => array ( 'fileHash' => '647e81b6a06ea09eb08cced6ffaa78e9f517a6c7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php' => array ( 'fileHash' => 'd53fe4ea4a62f291ad0cc2ab171064b543eb9ac2', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php' => array ( 'fileHash' => '27ea340067a58eeacad8752b11e03206c35929de', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/SpanStatus.php' => array ( 'fileHash' => '8ff46a77f948c6b20b73958cdbfb4f981fd055fa', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php' => array ( 'fileHash' => '2e9b2e804f28e1406cc295d4d4e32818c68cffc1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php' => array ( 'fileHash' => 'e110eb1901c293ef3b8dc40fca630963f9684994', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceExporter.php' => array ( 'fileHash' => '0e48ee04b234271411eec4c08fa0c49d00cd1fe4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/ConsoleTraceExporter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/DatabaseTraceExporter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/FileTraceExporter.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/JaegerExporter.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Exporters/OpenTelemetryExporter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceCollector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceSpan.php' => array ( 'fileHash' => '54ac9c60bd35db4ef21649822997795d952163bd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TraceContext.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/Tracer.php' => array ( 'fileHash' => '7506d3001b19a824ce5010bf19c7093911af8bb3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Tracing/TracingMiddleware.php' => array ( 'fileHash' => '74ed4b5b7fbde1dad1acb6d2b6ffbe751c0023b5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/MiddlewareManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/StringConverter.php' => array ( 'fileHash' => 'bd27249e94e6c25853d0278e778f69f8137dae08', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidGenerator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php' => array ( 'fileHash' => '7340cce84ffb6b05b6d987e1615289f1ab8c2217', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/AlertManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Alerting/EmailAlertChannel.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorAggregator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorPattern.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/Storage/DatabaseErrorStorage.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidGenerator.php' => array ( 'fileHash' => 'e6a96e4a1c540f82a0db35876bcba2d26f2d50bc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/CacheSmartLinkService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Smartlinks/Services/InMemorySmartLinkService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php' => array ( 'fileHash' => '9a964eb06c29d850369814ca8a06de17c0829c2d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidValidator.php' => array ( 'fileHash' => '0c6a446317f7675bb83583e5d86aa25d2eef66ac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/Ulid.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Ulid/UlidParser.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Ulid.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/BrowserType.php' => array ( 'fileHash' => '60ec01ab87834139fd1a9e44933ad838fda04e80', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/BrowserPatterns.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/EngineType.php' => array ( 'fileHash' => '8304649320deb7dc38101303754be2978fb702f1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/BrowserType.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/EnginePatterns.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Enums/PlatformType.php' => array ( 'fileHash' => 'a72ccd11456d209043e8a8bb028666f010b6f56f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/PlatformPatterns.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php' => array ( 'fileHash' => '9cc679416203e31ba2ac3881ab1390151d82eef3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgent.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/BrowserPatterns.php' => array ( 'fileHash' => '5ad986349bb4656bad8c03d3a7ee739955fc9331', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/EnginePatterns.php' => array ( 'fileHash' => 'a2aed8055aa304f0d2e9b03a26b320cbbc470a52', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/Patterns/PlatformPatterns.php' => array ( 'fileHash' => 'a8725250018353e8c6efd666f8d1120ad015c432', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgent.php' => array ( 'fileHash' => 'bf4fad685226ff2a49ac361a6f27807473a5eec0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorAggregation/ErrorEvent.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityAlertManager.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/SecurityEventLogger.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ApiErrorRenderer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorReporting/ErrorReportingMiddleware.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/ErrorHandlerContext.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Exception/RequestContext.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/FeatureFlags/FeatureFlagContext.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Http/ServerEnvironment.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/Fingerprint/FingerprintData.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionFingerprint.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/SessionManager.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/ParsedUserAgent.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgentParser.php' => array ( 'fileHash' => '37e54cfbc6b4a51858b52f74190b39523b0d4acd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/UserAgent/UserAgent.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php' => array ( 'fileHash' => '4fb50ad187b3f365cb0cdeef90a17704a4fa0191', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ExceptionConverter.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ParameterProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/GroupAware.php' => array ( 'fileHash' => '388aa7bb7d355dc730689842e0e9acc917a30dd7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/ValidationGroup.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php' => array ( 'fileHash' => '3d15a890d2f2ffeaa9164aefcd2734dde9fef6ac', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/DateFormat.php' => array ( 'fileHash' => '65ed2c669fa8e2e6f3697869da2f2db3de724429', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Email.php' => array ( 'fileHash' => '3978090f7f3ae9bfcacf7cb2ea2627989c7853d9', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php' => array ( 'fileHash' => 'acc632de2db81bf88380128820346ee85957ed22', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/IsTrue.php' => array ( 'fileHash' => '08dda908e44f2c53506c371c3dc635cdd484e35d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Numeric.php' => array ( 'fileHash' => '9bd70616453fbcebbcd6504557117a09ccafa9b7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Pattern.php' => array ( 'fileHash' => '0a4824e6dab40a9c00c1de291d293c0688e9d6db', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Phone.php' => array ( 'fileHash' => '7f1f585747e6d36fb02c7805b700fcc30cbc3203', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Range.php' => array ( 'fileHash' => '1aceeaa50d2166286f353cb512907093bf5c1ff0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Required.php' => array ( 'fileHash' => 'd67e4edb71d1877bf3866507d8a59783d4c3e78a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/StringLength.php' => array ( 'fileHash' => '7259f7b699d42ba57528a4d05e5102c89bd7f478', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Ulid.php' => array ( 'fileHash' => 'a33f3cfb7b0444177aa633922d7d64269038da5a', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Url.php' => array ( 'fileHash' => '491e24d604e0403df583abc46de74a5f43b6f986', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/ValidationGroup.php' => array ( 'fileHash' => '1f57a73c4522cfe89fd8a7497cd655d143211cfd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationFormHandler.php' => array ( 'fileHash' => '5705938b10ce1e5e5765e509b597008737a94842', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationResult.php' => array ( 'fileHash' => '0d59067804e59cb6ffe926382af74df15fb10b30', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/ValidationErrorBag.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Exceptions/ValidationException.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/ValidationRule.php' => array ( 'fileHash' => '91d641d875f8ebb9b697ee94afa6ee301aaf9b24', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Custom.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/DateFormat.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Email.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/In.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/IsTrue.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Numeric.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Pattern.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Phone.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Range.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Required.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/StringLength.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Ulid.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Rules/Url.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Validation/Validator.php' => array ( 'fileHash' => '74c14b1422899145239c77536b363a2c4b6d4dbe', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/ControllerRequestFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheStrategy.php' => array ( 'fileHash' => '32f249ae7df3a8c1365c404f9c604e294a362d82', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php' => array ( 'fileHash' => 'ec37f21ff1f78018191122bd97ee2279f3fa8ce8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityScore.php' => array ( 'fileHash' => 'b7360c264c1578f8bfcfa64522fb8f1e549629b6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/CacheabilityAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php' => array ( 'fileHash' => '12ec9bce36e7683f3f8d2f4d5e6d49a571d4d770', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalysis.php' => array ( 'fileHash' => '5b69a0a441894c0f94f1ea36de45cd6026f22fd2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/TemplateAnalyzer.php' => array ( 'fileHash' => 'c37fcc81f1f0abb20471a1adad307b907b520cf3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php' => array ( 'fileHash' => '7d695a3e34b94d4b40d515c8ad46c129950a2e4b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php' => array ( 'fileHash' => '61fcc99565c9618e013612ad3f8c55f677887161', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/FragmentCache.php' => array ( 'fileHash' => '748b8e0a959c73bf68470609b11468e416eacba9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Keys/SmartKeyGenerator.php' => array ( 'fileHash' => 'f6139f7b381195d666249e3ab6a4a9925ba205b0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/SmartCache.php' => array ( 'fileHash' => '426af3e8480ddb86894fb906b86a11cd6a5bb53c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php' => array ( 'fileHash' => '3f8374fe8d8e87be97781b895c250731de1a10d8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php' => array ( 'fileHash' => '975453cc32a3b3b6426c329a28088964c46a1695', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php' => array ( 'fileHash' => 'f77983f6911de91651fa0fd84709de0fdfb944c6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/NoCacheStrategy.php' => array ( 'fileHash' => '87373097fe1f0d8aab72b5abab195b3a86694b11', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ViewCacheStrategy.php' => array ( 'fileHash' => '5f2cca18c174dca36c784f5c6c06e3fbd41167c6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/NoCacheStrategy.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TaggedFragmentCache.php' => array ( 'fileHash' => '5a79272f93fa1e21368a40be4e3e2a649b1cb7a9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/TemplateContext.php' => array ( 'fileHash' => 'e3c418413136f6424b03b913e6e34402ff7a3c6c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheDiagnostics.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/CacheManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ComponentCacheStrategy.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FragmentCacheStrategy.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/FullPageCacheStrategy.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/NoCacheStrategy.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Strategies/ViewCacheStrategy.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentCache.php' => array ( 'fileHash' => 'f76b16800826554aef31aeb578a3657c096f2e0d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php' => array ( 'fileHash' => '38a67dc506a4fcdaeb6fc120ef05a1aea9109a2d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php' => array ( 'fileHash' => 'c7df97a02e2598c96f521f2283a6e88fd2b154e6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomFormService.php' => array ( 'fileHash' => '0e0c628780669408769d380d40084acb24dbd729', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php' => array ( 'fileHash' => '8af3c648457fb5a32d3297f12beeb4d7ddd801f5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php' => array ( 'fileHash' => '6da9a655dabbee38c33c4071bbc9bb124c030487', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Parser/DomTemplateParser.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/DomProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomFormService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedDomProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/ElementCollection.php' => array ( 'fileHash' => 'edaaa85a31311d9c433def20ca90b5d63da55280', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomComponentService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomFormService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomHeadService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/DomWrapper.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php' => array ( 'fileHash' => 'b070e3fd6c7ce5767dd5736b2ad819b936190d22', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedDomProcessor.php' => array ( 'fileHash' => 'ad00b1a8420cafcd2cea2fc7900a7f0c8f4c17ce', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php' => array ( 'fileHash' => 'dd8fd03b0d4bc9ad64a5ffd41b8c003503815afc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Exception/TemplateNotFound.php' => array ( 'fileHash' => '78592659d3038babf54d01708d3f3daad0b232ca', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Exceptions/TemplateNotFoundException.php' => array ( 'fileHash' => 'a5accdddc119830affb18cafa302eefb565bdbbd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php' => array ( 'fileHash' => '156e3cc626519d17a73e8671412494be2d24c118', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/TemplateFunction.php' => array ( 'fileHash' => 'd2b2e772d39b59282750e63f532211d94da4d3b6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/ImageSlotFunction.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Functions/UrlFunction.php' => array ( 'fileHash' => 'b1313a5fadcbfc68ce117dfee72d12e96908e39c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ComponentResolver.php' => array ( 'fileHash' => '527f9f01c155ae7a0ad7e92471f59649ee27aa7c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php' => array ( 'fileHash' => 'c713777893b3ef34ee3c5694d84113bb6a180be8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DefaultPathResolver.php' => array ( 'fileHash' => 'b05e517859687374736764b89577e0f5e075bbac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php' => array ( 'fileHash' => '41ca144b6226bfc72ba449ab9fe94d5078f06079', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/LayoutResolver.php' => array ( 'fileHash' => 'e60b4d938beb6533aa371c695a2fcde6a2be8703', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateMapResolver.php' => array ( 'fileHash' => '30fa03ee3e455a549d9db8e1feca77c55339f1ec', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateResolverStrategy.php' => array ( 'fileHash' => 'ddcc6355f76816c98f86f837b7e93931629d26c2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ComponentResolver.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/ControllerResolver.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DefaultPathResolver.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/DiscoveryResolver.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/LayoutResolver.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/Resolvers/TemplateMapResolver.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateCache.php' => array ( 'fileHash' => '854b7ae45461bf247666ccbf917d74bd95e78272', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateContentLoader.php' => array ( 'fileHash' => 'de955ffa98d35cf1996afd4cdc7a4ed5d6fd4246', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php' => array ( 'fileHash' => 'd12870431780aedb557ea0ab7e470be763fbdaf5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/Analysis/SmartTemplateAnalyzer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplatePathResolver.php' => array ( 'fileHash' => '76527be73085c09cfb6f2906b1722fbd7532c30f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php' => array ( 'fileHash' => 'a97a063a31606b5c4eeae8a1b73c59f4ac86274f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php' => array ( 'fileHash' => '0834383fa54cac1b16fd624127146960209c6309', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php' => array ( 'fileHash' => 'c5860278084f52cc7a88b95ccf3155290f91832a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php' => array ( 'fileHash' => '24ab9678848dc78e52e4b475cc4e93fe5823426e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php' => array ( 'fileHash' => 'fdd7ab4ca0cf5780b1cff4c470d25b36f96ff4bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php' => array ( 'fileHash' => 'c8d75ff098f54ee118a387bf26a33dea3e8f7474', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php' => array ( 'fileHash' => '01bd003461e09453086a6ebb28d7cc86ff068a67', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php' => array ( 'fileHash' => '3e656743572c70d613f3514e1b66930cd70245e0', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php' => array ( 'fileHash' => '8a768044ca7cc944d955514199ccb1ee19404688', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/Exceptions/ViteManifestNotFoundException.php' => array ( 'fileHash' => 'e94912a4f452d462bccde2e4da9de77cf877a74b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php' => array ( 'fileHash' => '787ed74ea45446cf3b918d7c591b867c33c9f3fb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php' => array ( 'fileHash' => '842b37524859cba20d1d55423083e586d25c3a26', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php' => array ( 'fileHash' => '8c052efb6f1c8504ae729f23b77033939ed19bcb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php' => array ( 'fileHash' => '901d6c1889f6a360c1c4ec1b2ad79bb6d07bab8b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php' => array ( 'fileHash' => '152cc04d7a4bdc487751f23d7a9670d1ad580cca', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php' => array ( 'fileHash' => 'ed8dc8de1e248bebc7568b4426d71ec3ba0b3a84', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php' => array ( 'fileHash' => 'a3db14134a79c071a78dcf3a4583a811b99b51f0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php' => array ( 'fileHash' => '05acf285e03e3bf2ac06cb9e941b8e1c2a35227e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php' => array ( 'fileHash' => '58f9cd9d867cd298866543a184b1ac3a7a6092d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php' => array ( 'fileHash' => '63a6044229b1aee538b620cc9005cdf002eced47', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php' => array ( 'fileHash' => '4a226fddf9388b191584f54f8c13e9a7a818ecf1', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php' => array ( 'fileHash' => 'efc6fa28846fadb45ea8fc404e3e53cb5197e888', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php' => array ( 'fileHash' => 'bf09b60129884a7535970d49b966910ba6ca279f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php' => array ( 'fileHash' => '84e075b908fddb25785045daf05ea202f37552fd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/RawHtml.php' => array ( 'fileHash' => '229cdf522257c61eb6b6e57faf37d9a8fcf8ba93', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/RenderContext.php' => array ( 'fileHash' => '86ebb8390475a3546b30fe60e4464075cbb45ec4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/DummyTemplateRenderer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Session/FormIdGenerator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/DomProcessor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Template/Processing/StringProcessor.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/View/Caching/SmartCache.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedDomProcessor.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/View/EnhancedTemplateProcessor.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/View/Loading/TemplateLoader.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/DomProcessingPipeline.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processing/StringProcessingPipeline.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/AssetInjector.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CommentStripProcessor.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ComponentProcessor.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfReplaceProcessor.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/CsrfTokenProcessor.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/DateFormatProcessor.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/EscapeProcessor.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/FormProcessor.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/HoneypotProcessor.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IfProcessor.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/IncludeProcessor.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/LayoutTagProcessor.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/MetaManipulator.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PhpVariableProcessor.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/RemoveEmptyLinesProcessor.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SingleLineHtmlProcessor.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SlotProcessor.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/SwitchCaseProcessor.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/VoidElementsSelfClosingProcessor.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRenderer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/Template.php' => array ( 'fileHash' => '3c1e7b648b3a29f1bb976989bd54ab0741149901', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateFunctions.php' => array ( 'fileHash' => '91ac7a05933b0d6c687c85300de104b8b955b181', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/PlaceholderReplacer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateMapper.php' => array ( 'fileHash' => 'c8088b5a5aebb62f8756c8273504f589e724739e', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateProcessor.php' => array ( 'fileHash' => '349b2d28eb14e14277b73b8e53a3534885e5c377', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/View/ComponentRenderer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/View/Processors/ForProcessor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRenderer.php' => array ( 'fileHash' => '92616614620256fe213db074cab5072e341eb3dd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/DummyTemplateRenderer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/ErrorHandler.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/ErrorHandling/View/ErrorTemplateRenderer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Router/RouteResponder.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/View/Engine.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/TemplateRendererInitializer.php' => array ( 'fileHash' => '84026f6e377f02be6ade5d28e22ceb632d4d5e50', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/api/docs-selfhosted.view.php' => array ( 'fileHash' => '4382c6b76e311add9bea3554d62bb7bf70a15a55', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/api/docs.view.php' => array ( 'fileHash' => 'b7bb5eae408ef134b8652e7bdd73117e06ea7585', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/designsystem.view.php' => array ( 'fileHash' => '973f61791c7db2fe2e13e65647e01e9b8fe8ff3d', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/epk.view.php' => array ( 'fileHash' => '1f2091a71190835f887d6a78dab5262229c25b35', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/health-dashboard-optimized.view.php' => array ( 'fileHash' => '585a4d59ad870dd4a2ccbac0f74a450d13b5f693', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/impressum.view.php' => array ( 'fileHash' => '446ed7e6a07c11d7977287af419765562d015cd3', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/layouts/admin.view.php' => array ( 'fileHash' => 'bb8882893260aaf077c4ce83a53316d86b1ec62b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/layouts/main.view.php' => array ( 'fileHash' => 'ea09c81e8987e56ed4fff7f3b8ebb4d1352e67fd', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/markdown-test.view.php' => array ( 'fileHash' => '05732bed56edc474b1b224e1bc5d26e550c0de29', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/markdown.view.php' => array ( 'fileHash' => '6cd76785ebc4d4f14fd939ce4fa4ccf1d6f7e485', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/simple-test.view.php' => array ( 'fileHash' => 'ece5ceb8bde078c9162dff2e95d91232ca6b5720', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/styleguide.view.php' => array ( 'fileHash' => '07d17bc1aba67512b04f0c1897505e744ecc6f08', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/View/templates/test.view.php' => array ( 'fileHash' => '49f56b73c618dfdf00617c261fc8e288183bd4d5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php' => array ( 'fileHash' => '65b699534b0d45445a3a0b54e52cd67c7dded719', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisType.php' => array ( 'fileHash' => 'dd8c1eb4522baf25d6d36c147153b30b75e3cc5b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php' => array ( 'fileHash' => 'c5b6df088017604e02c14604b0a32b8e41061ebc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php' => array ( 'fileHash' => '542925c32e0e4d73ea2dc9844669319e013389c8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php' => array ( 'fileHash' => 'e59e85b4d76b1dcd90f11557ff190ec4c9a97840', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php' => array ( 'fileHash' => 'c123e120df224410f5ad49b77b29c04ca8f0bfa7', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php' => array ( 'fileHash' => '8be8d592667671ae4c2a053ca2d04245f4c84c94', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php' => array ( 'fileHash' => '5b01d369631a68c09022d53ace2635e89f76282b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php' => array ( 'fileHash' => 'a7586cc8db81b64c7171a1be687b0725ec1cd834', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php' => array ( 'fileHash' => '892b3db5b3645f404ccc518351a0bd5e6c472ca1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php' => array ( 'fileHash' => '89027757f629e0358dac1a7e52877588bad8993c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/ValueObjects/RequestAnalysisData.php' => array ( 'fileHash' => 'bd889dab4dd8c6e6605c4ec9677c666b1a83f236', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/AnalyzerInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotDetectionType.php' => array ( 'fileHash' => '06848539379f713859943535d6ba086f0476f272', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php' => array ( 'fileHash' => 'daf4e2674af38a61119f034776da18ed1245c042', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php' => array ( 'fileHash' => '06f81af6fedcc3d96712868528c2543627e95b18', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php' => array ( 'fileHash' => 'ed65ea57afe60d86b6732d332c255005c12f3634', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php' => array ( 'fileHash' => '056c4ce8bc7fa8fb1716035a8bc602b539a443ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php' => array ( 'fileHash' => '99d93d1992b43902781371002130b12540e3291d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php' => array ( 'fileHash' => 'b1771498ebad92f7081aeeee70045f9fe38f5aac', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php' => array ( 'fileHash' => 'fd89ae4f3c1b77cf42f34b8aa4ee9601eaef59e2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BehavioralAnalysisResult.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php' => array ( 'fileHash' => 'b7ed01f1988d71d39edf674c8bd3ff8e8c05c9f0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotRiskScore.php' => array ( 'fileHash' => 'd1f5ec7f1d627c6cbfc0c42b944bfb62e507cb51', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BrowserFingerprint.php' => array ( 'fileHash' => '1280e0b039615e5f4325e96105cf30e7f6a738ea', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/FingerprintDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaChallenge.php' => array ( 'fileHash' => '20b5a0d39e807f2329adccfcb6dd0109d3c57be2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/CaptchaResult.php' => array ( 'fileHash' => 'e01fd9f81fe56ec8fc84cf59bd325f8ee73f0b7d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/CaptchaValidator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/DeviceProfile.php' => array ( 'fileHash' => '17bb58dbaac5552e81aa27644c6c1994b7ae1b23', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/BotProtectionEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/DeviceIntelligenceDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetectionResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionCategory.php' => array ( 'fileHash' => 'd7f7f7d5359113bf0ef1617776adac26445134d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 4 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackRepositoryInterface.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionSeverity.php' => array ( 'fileHash' => 'c1f74f523b8dad16dbba98b5a50f5e51ad8c1bed', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/AnalysisResult.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/BodyAnalyzer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/CookieAnalyzer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/FileAnalyzer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/HeaderAnalyzer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/JsonAnalyzer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/ParameterAnalyzer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/UrlAnalyzer.php', 13 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Analysis/Analyzers/XmlAnalyzer.php', 14 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/Detectors/BehavioralDetector.php', 15 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/BotProtection/ValueObjects/BotDetection.php', 16 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/DetectionCategory.php', 17 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 18 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 19 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 20 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 21 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 22 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 23 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 24 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 25 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 26 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 27 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 28 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 29 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 30 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 31 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 32 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 33 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 34 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 35 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 36 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 37 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php' => array ( 'fileHash' => 'd5c199808bf4a42936e462d9aaeca533f5cc7fa8', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php' => array ( 'fileHash' => '8ea948a15aaa9429907cfc3cd035f3a05abe5583', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php' => array ( 'fileHash' => '04a247da0d053a09334818b5615c20229f96135b', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php' => array ( 'fileHash' => '0616c79b82487f92223bf9171080a42d106d7bbc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackRepositoryInterface.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php' => array ( 'fileHash' => 'b79e4ad7e61a2edbda9a786bdd3d4ab04b6222af', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Commands/LearnFromFeedbackCommand.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackRepositoryInterface.php' => array ( 'fileHash' => '04e637c5a85b32fb01eb5466a3601f9d02cb72ce', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php' => array ( 'fileHash' => 'd01ac52fc2f2429aacec418e0d6a00e137849713', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackType.php' => array ( 'fileHash' => '13fb5c7639442603968f2fc0a979a38e807cbe44', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/Analytics/FeedbackReportGenerator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DatabaseFeedbackRepository.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/DetectionFeedback.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackRepositoryInterface.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php' => array ( 'fileHash' => 'dc8bfb46832fa08965ce5d6f0333f47d18271c72', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php' => array ( 'fileHash' => '73e8fd57a2d1aa15035226267549c2d1caf529f6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerStatus.php' => array ( 'fileHash' => 'd783163b3db8a81a3bc1a0ec224b78c61b0a95f8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php' => array ( 'fileHash' => 'b9966b5f30ba26fe9d92c304978b09621e1f932b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php' => array ( 'fileHash' => '4464c6c7cb5c953720778f2a0a292db56ee6c312', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php' => array ( 'fileHash' => '6189ec2ca07f89883ac2546a022bce9eb5317a70', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php' => array ( 'fileHash' => 'bbb39107a1da34f0ffafa93f938a98ce3cb2b8be', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php' => array ( 'fileHash' => '5dc675bb6ae92810a250bb3f0c70a70459a789ba', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php' => array ( 'fileHash' => 'e7aa618e6993f7b8a1b1b6cd2e00424e0060ac68', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php' => array ( 'fileHash' => 'afdbd5241485343a781e3be8da03c24a8754bae3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php' => array ( 'fileHash' => '68d76c37e9a8b13fa1f48640319ff5c3716038d4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyType.php' => array ( 'fileHash' => 'fdf7f4d7a2e3ec67f1e7bbd7a2ee2ee3d80b4ab3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php' => array ( 'fileHash' => '12d82acbca602e20dc598f6d03bc303b8633f9f5', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BehaviorType.php' => array ( 'fileHash' => '75f91b97579e0eaab7d119c2b389233869aae154', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ConfidenceAdjustableInterface.php' => array ( 'fileHash' => 'd5dfc417d2fb9a2c2405c1f5d608b73cb660e013', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php' => array ( 'fileHash' => '66acabb1b0dbc91c024ff7d34647ed3a3738403b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php' => array ( 'fileHash' => '6286994f7649fac22b0aabcb324a391837c99bd1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php' => array ( 'fileHash' => '7c120f7d84b29051926db561096dda79a3bc3ec6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php' => array ( 'fileHash' => '3c8599562709d74813e5fb478a1a31d8228925a3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php' => array ( 'fileHash' => 'd5384633fb6251405a1d6acc13bc26a180a2bd7c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureWeightAdjustableInterface.php' => array ( 'fileHash' => '2bd54964410e03d5e37fff5c4494d6196e730b37', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php' => array ( 'fileHash' => '5a5592414b6a48590dac8556cd631136d43f102c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php' => array ( 'fileHash' => '55a27a8bf45cc463646a52a777a01595aac87bce', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ThresholdAdjustableInterface.php' => array ( 'fileHash' => 'f47ca87237b668ebd794cc767ed3b0708406aaf1', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php' => array ( 'fileHash' => 'fa3acbdfacfaa22189248dd65d65048d11dd796a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php' => array ( 'fileHash' => '5e6a187a474b79909e7702ef6ad780e0cdd4226b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorFeature.php' => array ( 'fileHash' => 'e6a4fb1d8fd2ec49bb3dd404356c96ddfec017db', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/AnomalyDetectorInterface.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/BaselineManager.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/ClusteringAnomalyDetector.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Detectors/StatisticalAnomalyDetector.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/FrequencyFeatureExtractor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/Extractors/PatternFeatureExtractor.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/FeatureExtractorInterface.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningResult.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/AnomalyDetection.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/BehaviorBaseline.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/ValueObjects/ModelAdjustment.php' => array ( 'fileHash' => '284104fe71d8307817c597bee14c46f3891adeff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackLearningService.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/MachineLearning/MachineLearningEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/PerformanceService.php' => array ( 'fileHash' => '8087e2055541d7e33f46cfa74697e04b610b94dc', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php' => array ( 'fileHash' => 'dac5407466e54652c973a8e83e94567a55450482', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php' => array ( 'fileHash' => '074cb17375e88c69d2e8f2d31cf52c50596fa58e', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleAction.php' => array ( 'fileHash' => 'dc5910ade42f3a2766dfdc050c78f47589464bb3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php' => array ( 'fileHash' => '2c225f332dad0eceb78145374f0bd0ee42173b99', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php' => array ( 'fileHash' => '9f16c4dc10e91434e39d2b22a2f3aa919ed6dc45', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleType.php' => array ( 'fileHash' => 'cb3273db9984fef87afe2b2ed566a4df1dc46ecc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php' => array ( 'fileHash' => '79bace5732a06d3a4bfe9d8ce674fa43c5fb86ff', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php' => array ( 'fileHash' => '018fbcf82ed7d037ada298bf8a053bd66157be9f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RulePattern.php' => array ( 'fileHash' => '86504bf2c8e56523b10d5074533db27fde6e4c32', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleCondition.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php' => array ( 'fileHash' => '64d6d40d723a301ac6ab6399fa0783a0b98fffef', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php' => array ( 'fileHash' => '99061c4ae2dda95ac13b8554085ef6b5b65b7a16', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php' => array ( 'fileHash' => '236071e5573118d28d1322af2aef636b63ea822c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/BusinessContext.php' => array ( 'fileHash' => 'efa5bdc49072d52faffac8272eb0ee936020435d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php' => array ( 'fileHash' => 'ae540fcc4d18a94eceb8542c23798270509ada56', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/FeedbackService.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 10 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 11 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', 12 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/DetectionCollection.php' => array ( 'fileHash' => '49ffb826db56a94e9eeb1bcb1bae659144535a79', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessment.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/GeographicContext.php' => array ( 'fileHash' => '80487ee6c94ea76fa942f4543637423411ee3187', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerConfig.php' => array ( 'fileHash' => '66275e40091cc6869cf91dc203b340176e8177dd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Config/WafConfig.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/LayerMetrics.php' => array ( 'fileHash' => '97e0aa1815cb0baba408d1bfdd02b162ae5a53ad', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/CommandInjectionLayer.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/IntelligentRateLimitLayer.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/LayerInterface.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/PathTraversalLayer.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SqlInjectionLayer.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/SuspiciousUserAgentLayer.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Layers/XssLayer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/PayloadSample.php' => array ( 'fileHash' => '80a7943295010816038d9af589b36899126418f3', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RequestContext.php' => array ( 'fileHash' => 'a75ef4fd38c145546bb83ebdec60ae0bcb346518', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php' => array ( 'fileHash' => '6dae15ad6c954cf16db3911a5b0b91afc3acd660', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/LayerResult.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/RuleId.php' => array ( 'fileHash' => 'e5a035fe7f5362b688f3f87f3edf08fcbad5fedd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/OWASPCoreRuleSet.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/Rule.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEngine.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/RuleEvaluationResult.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Rules/ValueObjects/RuleMatch.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/Detection.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/ResultMetadata.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/SessionContext.php' => array ( 'fileHash' => '758018395a73412e8ce87fa63364b3cfd5df84d0', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/TechnicalContext.php' => array ( 'fileHash' => '31b4f101aeaa43edd3b6ab5dd3cb7b0d7d6a28bb', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ValueObjects/AdditionalContext.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafAction.php' => array ( 'fileHash' => '2ffefaa374cf52c651c0c4cd8425dd063c4bb3c9', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafDecision.php' => array ( 'fileHash' => 'ab2dda3984f6011c2506c0422442f6fb00533584', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/ThreatAssessmentService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngine.php' => array ( 'fileHash' => 'e77cfa066727250620a18cbbef2ffae79800fc62', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Http/Middlewares/WafMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/Feedback/WafFeedbackIntegrator.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Waf/WafEngineInitializer.php' => array ( 'fileHash' => 'ae9fff78a1c00fd771853e50677f6858debfe553', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Attributes/WebhookAuth.php' => array ( 'fileHash' => 'c5a4a75ac0a57ddc6b73acbf622a02b06896d879', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Attributes/WebhookEndpoint.php' => array ( 'fileHash' => '32b3dd319aed582fcc21ac3852d60dcd4bb3f947', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Attributes/WebhookSignature.php' => array ( 'fileHash' => 'b87fcbfe050758517b0833e3feda3d8d1e54cd10', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php' => array ( 'fileHash' => 'd165ec02e36dcea245e6a0c61f83d05b16b89109', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php' => array ( 'fileHash' => '7f1920399f7271316023dc382ecf601178313d6b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookSent.php' => array ( 'fileHash' => '2be9ba0082d5e9d45dde4ed3af4fd8b3f3b5c142', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php' => array ( 'fileHash' => '1acbbdb076507b3d1f220500176e35600ef5b16f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php' => array ( 'fileHash' => 'ef3a7e589d8e719a4d1c63c3a6f19e029513689f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php' => array ( 'fileHash' => '855791b3704c696a3d45952af7cb1808bced1609', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php' => array ( 'fileHash' => 'b95449aa74afa753108b7851978dee3a288eaf91', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php' => array ( 'fileHash' => '6a8ec6ccac5d8d7e2d3230664fedfb19dc58e352', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php' => array ( 'fileHash' => '671d9e63452212dc594a6c3507fddde1c9f23f79', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php' => array ( 'fileHash' => '18b7cfc0720b0a266c15921298dd11a415cc607a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php' => array ( 'fileHash' => '7bcbf56e39523c19e45787269c0fc088de1f439a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/SignatureProvider.php' => array ( 'fileHash' => 'c1f332aa8cef5b42e5594c23dfb2cc14203c5cdc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php' => array ( 'fileHash' => 'a9c3121158fcf23bed02b99bf747384f5bcdce84', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php' => array ( 'fileHash' => '52d5f50c0f992da23c74ecf27d3a807b35c461fc', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php' => array ( 'fileHash' => '69b145e53ce54a78bf626a615f6f288ea909ecb2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSendResult.php' => array ( 'fileHash' => '21f25ec6ae7692c86e8140df2704eb52b32c4e06', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php' => array ( 'fileHash' => '0f731077f47c52b2860f95eb87fe1e284069b8cf', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookPayload.php' => array ( 'fileHash' => '7a0120a699c25060b4fc6ad46e91ef59c9eed7d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookProvider.php' => array ( 'fileHash' => '03ff4e02789d3f4ed899691933611651cf84a421', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookReceived.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Jobs/WebhookJob.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Middleware/WebhookMiddleware.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/IdempotencyService.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookJobProcessor.php', 5 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Processing/WebhookRequestHandler.php', 6 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/SignatureVerifier.php', 7 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookScheduler.php', 8 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Sending/WebhookSender.php', 9 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookSignature.php' => array ( 'fileHash' => 'f6ed330bbd881de6e03d38bc27e603fef8615d10', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GenericHmacProvider.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/GitHubSignatureProvider.php', 2 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/LegalServiceProvider.php', 3 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/SignatureProvider.php', 4 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Security/Providers/StripeSignatureProvider.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/ValueObjects/WebhookType.php' => array ( 'fileHash' => 'b1d9123c94a67623694b90b058e7b15e68b1e82d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Webhook/Events/WebhookFailed.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Webhook/WebhookService.php' => array ( 'fileHash' => '73d8ea3a34689e93fbbde1e933ed2faa6402cee4', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Worker/Every.php' => array ( 'fileHash' => '432f34482f4f39b258cebbfc4239287633f8cc69', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Framework/Worker/Schedule.php', ), ), '/home/michael/dev/michaelschiemer/src/Framework/Worker/Schedule.php' => array ( 'fileHash' => 'f8721b94ac9ee4dc573bf07a8bcdf4216e68a136', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Framework/Worker/Worker.php' => array ( 'fileHash' => '737123a81e788b136448c474cd8508118df98d5f', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php' => array ( 'fileHash' => '74b0cdd00815c255c76b1b84de82af2c1e5053b8', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiService.php' => array ( 'fileHash' => '78e1862c3757dc555719dbb1ba0f5984d0b193b2', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/GPT4All/Gpt4AllQueryHandler.php' => array ( 'fileHash' => '29644b0e0b4392d876c06b6e2f53198ac94a3cd5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/Ollama/OllamaQueryHandler.php' => array ( 'fileHash' => '24704d7af7fafe82e20d4a65e1c1e9d006f9443f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/OpenAI/OpenAiQueryHandler.php' => array ( 'fileHash' => '98ce5912f076f734fc1f263d66179066e4adc71f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/AI/AiHandlerFactory.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/GitHubClient.php' => array ( 'fileHash' => 'bc88dd050728ba68df96a0c4023e7be9de097176', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php' => array ( 'fileHash' => '40e3d65c0794efdd3c85b7cf0fff7da8c690b474', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php' => array ( 'fileHash' => 'c699cdad9b092b2ab738c837c8794c477c6abf7d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php' => array ( 'fileHash' => 'd04942214fe4112a940046022a9d646fb58ef0bd', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php' => array ( 'fileHash' => '6d04d4aed1432886d37215b20968b7dbe8ae77af', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php' => array ( 'fileHash' => '9dc2c21b8fc5c0fc6cb4702d4322596394c02a68', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Mailing.php' => array ( 'fileHash' => '4f44aa75c7f91676e542f0bd958afdf83121605f', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingId.php' => array ( 'fileHash' => '66f3f10202c59a3a2588c451b264913a4f93668c', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php' => array ( 'fileHash' => '6f2b6560883a4cc9a3b54c5761b2dc8e56898ad7', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php' => array ( 'fileHash' => 'f0f37667621227cc04ce5683bb0880e1a18bb39b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/BlacklistService.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/MailingService.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php' => array ( 'fileHash' => '45095c1ad0ec4a29262b96ecef0ab408732a87ca', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php' => array ( 'fileHash' => '434a5aae7b6ba0d1bbdb2db0fec979235a0a6ddf', 'dependentFiles' => array ( ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailConfig.php' => array ( 'fileHash' => 'd92ab5f3532182801832d4249e629fe702641a4a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailApiClient.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClientInitializer.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php' => array ( 'fileHash' => '9f671e35a6813b622ac73bada60667647ca94477', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php' => array ( 'fileHash' => 'bc6c7a0851779f9f7ef336fa8f0427cc495e6a3a', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientId.php' => array ( 'fileHash' => '31ee36c435cb6c178fb2a418b027a87e36a769f6', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListId.php' => array ( 'fileHash' => 'a1460660bcdd84e4d844f488c693e9007c74e49d', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/CreateRecipientCommand.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Commands/UpdateRecipientCommand.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 3 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Factories/RecipientCommandFactory.php', 4 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/Recipient.php', 5 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/ReadModels/RecipientList.php', 6 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php', 7 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientListService.php' => array ( 'fileHash' => 'bd67292b0810d2c54eeca43b78ffb0f4f4608c1c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RecipientService.php' => array ( 'fileHash' => 'e592af393f1ce7ee49fe32afeb25cede2c0a8864', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/Examples/UsageExamples.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/StatisticsService.php' => array ( 'fileHash' => 'ceb83c057941c7f5d179665917b3f73d52d2fe41', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMail/RapidMailClient.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/RapidMailClient.php' => array ( 'fileHash' => '859cb65755e942f56b04857e516b978d26cb4b0b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/Api/ShopifyClient.php' => array ( 'fileHash' => 'd1da21b156a0257a60aa5f2c1f2aa38d429c1d62', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php', 1 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php', 2 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php', 3 => '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/Country.php' => array ( 'fileHash' => '6688bbb64f6837f1cefe66a858a71b872250911b', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryDataService.php' => array ( 'fileHash' => '7d11ae8ceef625a71c85ec750b2d87520ad4b426', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/CountryInfo.php' => array ( 'fileHash' => '8e6be2d646ed00e891d838c96ba9a9d29f48f5d5', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', 2 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php' => array ( 'fileHash' => '6f8550ef58d3f5f09d6e562aa44b3c908e68f020', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php' => array ( 'fileHash' => '4af3c6a7e287039c00810945bef71f211462ec79', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php', 1 => '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php', ), ), '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/IpRangeService.php' => array ( 'fileHash' => '46f13ff36b44d4c5c3102deecefe86c6e042907c', 'dependentFiles' => array ( 0 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/DatabaseSetup.php', 1 => '/home/michael/dev/michaelschiemer/src/Infrastructure/GeoIp/GeoIp.php', ), ), '/home/michael/dev/michaelschiemer/src/preload.php' => array ( 'fileHash' => '01af272810a7255d08ee3f279a1338e0baf122cd', 'dependentFiles' => array ( ), ), ), 'exportedNodesCallback' => static function (): array { return array ( '/home/michael/dev/michaelschiemer/src/Application/Admin/CacheMetricsController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\CacheMetricsController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheMetrics', 'type' => 'App\\Framework\\Cache\\Metrics\\CacheMetricsInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showDashboard', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/metrics\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriverMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/metrics/driver/{driver}\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/metrics/top-keys\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/metrics/reset\'', 1 => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetMetricsGet', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/reset\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'debugTemplates', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/debug\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/cache/metrics/summary\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/Dashboard.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\Dashboard', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionInfo', 'type' => 'App\\Framework\\Core\\VersionInfo', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Config\\TypedConfiguration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => 'App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'routes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/routes\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'services', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/services\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'environment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/environment\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'phpInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mode', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/phpinfo\'', ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/phpinfo/{mode}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'redisInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/redis\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/HealthController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\HealthController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthManager', 'type' => 'App\\Framework\\Health\\HealthCheckManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showDashboard', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showOptimizedDashboard', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health-optimized\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSystemStatus', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health/api/status\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'runSingleCheck', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health/api/check/{name}\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getChecksByCategory', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health/api/category/{category}\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHealthSummary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health/api/summary\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'runAllChecks', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/health/api/run-all\'', 1 => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/Images.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\Images', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'never', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/images\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/LogViewerController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\LogViewerController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logViewer', 'type' => 'App\\Framework\\Logging\\LogViewer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showLogViewer', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAvailableLogs', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs/api/list\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'readLog', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs/api/read/{logName}\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tailLog', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs/api/tail/{logName}\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'searchLogs', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs/api/search\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLogLevels', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs/api/levels\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'streamLog', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\SseResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/logs/api/stream/{logName}\'', 1 => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/RoutesViewModel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\RoutesViewModel', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'title', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\View\\Template', 'args' => array ( 0 => '\'routes\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowDiscovery.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\ShowDiscovery', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'results', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/discovery\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\ShowImageManager', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotRepository', 'type' => 'App\\Domain\\Media\\ImageSlotRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/image-manager\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageSlots.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\ShowImageSlots', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageSlotRepository', 'type' => 'App\\Domain\\Media\\ImageSlotRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/imageslots\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'update', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/imageslots/{slotName}\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/imageslots/create\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'edit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/imageslots/edit/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowImageUpload.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\ShowImageUpload', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stringConverter', 'type' => 'App\\Framework\\Ulid\\StringConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/upload\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'upload', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'App\\Framework\\Ulid\\Ulid', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageVariantRepository', 'type' => 'App\\Domain\\Media\\ImageVariantRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/upload\'', 1 => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/ShowRoutes.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\ShowRoutes', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processedResults', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/routes\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Admin/StyleguideController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Admin\\StyleguideController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showStyleguide', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/styleguide\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/AnalyticsController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\AnalyticsController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyticsCollector', 'type' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dashboardService', 'type' => 'App\\Application\\Analytics\\Service\\AnalyticsDashboardService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reportService', 'type' => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'realTimeService', 'type' => 'App\\Application\\Analytics\\Service\\AnalyticsRealTimeService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashboard', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverview', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/overview\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeSeries', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/timeseries\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopPages', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/top-pages\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTrafficSources', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/traffic-sources\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserBehavior', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/user-behavior\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBusinessMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/business-metrics\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRealTimeData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/real-time\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEvents', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/events\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/export\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackEvent', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/analytics/api/track\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Contracts/LegacyArrayConvertible.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\Contracts\\LegacyArrayConvertible', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for Value Objects that can be converted to legacy array format */', 'namespace' => 'App\\Application\\Analytics\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to legacy array format for backward compatibility * @return array */', 'namespace' => 'App\\Application\\Analytics\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to enhanced analytics array format * @return array */', 'namespace' => 'App\\Application\\Analytics\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsDashboardService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\Service\\AnalyticsDashboardService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service für Analytics Dashboard-Daten * Verantwortlich für: Zusammenfassung und Aufbereitung von Dashboard-Metriken */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverview', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopPages', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTrafficSources', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsRealTimeService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\Service\\AnalyticsRealTimeService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service für Real-Time Analytics * Verantwortlich für: Live-Daten, aktuelle Benutzer, Real-Time Events */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRealTimeData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array{active_users: int, current_page_views: array, recent_actions: array, live_traffic: array} */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getActiveUsers', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurrentPageViews', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecentActions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLiveTraffic', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array{visitors_last_minute: int, visitors_last_5_minutes: int, visitors_last_30_minutes: int, peak_concurrent_users: int, current_bounce_rate: float} */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/Service/AnalyticsReportService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\Service\\AnalyticsReportService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service für Analytics-Reports und Datenexport * Verantwortlich für: Report-Generierung, Datenexport, Filterung */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'actionbreakdown' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'browserbreakdown' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'businessmetricsreport' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'countrybreakdown' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'devicebreakdown' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'userbehaviorreport' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserBehavior', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBusinessMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserBehaviorArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @deprecated Use getUserBehavior() which returns UserBehaviorReport instead * @return array> */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'actionbreakdown' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'browserbreakdown' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'businessmetricsreport' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'countrybreakdown' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'devicebreakdown' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'userbehaviorreport' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBusinessMetricsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @deprecated Use getBusinessMetrics() which returns BusinessMetricsReport instead * @return array> */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'actionbreakdown' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'browserbreakdown' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'businessmetricsreport' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'countrybreakdown' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'devicebreakdown' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'userbehaviorreport' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array> */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'actionbreakdown' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'browserbreakdown' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'businessmetricsreport' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'countrybreakdown' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'devicebreakdown' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'userbehaviorreport' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => '?App\\Framework\\Analytics\\AnalyticsCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventsCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => '?App\\Framework\\Analytics\\AnalyticsCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\Service', 'uses' => array ( 'actionbreakdown' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'browserbreakdown' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'businessmetricsreport' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'countrybreakdown' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'devicebreakdown' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'userbehaviorreport' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => '?App\\Framework\\Analytics\\AnalyticsCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/ActionBreakdown.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * User action breakdown for analytics reporting */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $actions */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $actions */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array{action: string, count: int}|null */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopActions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param int $limit * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getActionCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getActionPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Legacy format for backward compatibility * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BrowserBreakdown.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Browser usage breakdown for analytics reporting */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chrome', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'firefox', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'safari', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'edge', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from legacy array format: [\'Chrome\' => 65, \'Firefox\' => 20, ...] * @param array $data */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getChromePercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFirefoxPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSafariPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEdgePercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Legacy format for backward compatibility * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/BusinessMetricsReport.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\ValueObject\\BusinessMetricsReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Business metrics analytics report containing conversion and revenue data */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $conversions * @param array $revenue * @param array $goalCompletions * @param array $funnelData */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conversions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'revenue', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'goalCompletions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'funnelData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalConversions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalRevenue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurrency', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTransactionCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAverageOrderValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalGoalCompletions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConversionRate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopConversionType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopGoal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRevenuePerConversion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate revenue per conversion */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInsights', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get business insights and KPIs * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Legacy array format for backward compatibility * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enhanced analytics array with insights * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/CountryBreakdown.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Country usage breakdown for analytics reporting */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'germany', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'austria', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'switzerland', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'others', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from legacy array format: [\'Germany\' => 70, \'Austria\' => 15, ...] * @param array $data */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getGermanyPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAustriaPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSwitzerlandPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOthersPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDachRegionTotal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDachRegionPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Legacy format for backward compatibility * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/DeviceBreakdown.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Device usage breakdown for analytics reporting */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'desktop', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mobile', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tablet', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from legacy array format: [\'Desktop\' => 60, \'Mobile\' => 35, \'Tablet\' => 5] * @param array $data */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDesktopPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMobilePercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTabletPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Analytics/ValueObject/UserBehaviorReport.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Analytics\\ValueObject\\UserBehaviorReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * User behavior analytics report containing all user interaction breakdowns */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actions', 'type' => 'App\\Application\\Analytics\\ValueObject\\ActionBreakdown', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'devices', 'type' => 'App\\Application\\Analytics\\ValueObject\\DeviceBreakdown', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'browsers', 'type' => 'App\\Application\\Analytics\\ValueObject\\BrowserBreakdown', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countries', 'type' => 'App\\Application\\Analytics\\ValueObject\\CountryBreakdown', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalInteractions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalUniqueUsers', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMostPopularAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array{action: string, count: int}|null */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDominantDevice', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDominantBrowser', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDachRegionDominant', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInsights', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get insights about user behavior patterns * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Legacy array format for backward compatibility * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnalyticsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enhanced analytics array with percentages and insights * @return array */', 'namespace' => 'App\\Application\\Analytics\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/ApiDocsController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\ApiDocsController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for serving API documentation */', 'namespace' => 'App\\Application\\Api', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'staticpagemetaresolver' => 'App\\Framework\\Meta\\StaticPageMetaResolver', 'openapicontact' => 'App\\Framework\\OpenApi\\OpenApiContact', 'openapigenerator' => 'App\\Framework\\OpenApi\\OpenApiGenerator', 'openapiinfo' => 'App\\Framework\\OpenApi\\OpenApiInfo', 'openapilicense' => 'App\\Framework\\OpenApi\\OpenApiLicense', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'generator', 'type' => 'App\\Framework\\OpenApi\\OpenApiGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showDocs', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showDocsSelhosted', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/selfhosted\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_selfhosted\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOpenApiSpec', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/openapi.json\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_openapi_spec\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/ExampleApiController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\ExampleApiController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example API controller demonstrating OpenAPI documentation */', 'namespace' => 'App\\Application\\Api', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'apiendpoint' => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', 'apiparameter' => 'App\\Framework\\OpenApi\\Attributes\\ApiParameter', 'apirequestbody' => 'App\\Framework\\OpenApi\\Attributes\\ApiRequestBody', 'apiresponse' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'apisecurity' => 'App\\Framework\\OpenApi\\Attributes\\ApiSecurity', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listUsers', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/users\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_users_list\'', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', 'args' => array ( 'summary' => '\'List all users\'', 'description' => '\'Retrieve a paginated list of all users in the system\'', 'tags' => '[\'Users\']', ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiParameter', 'args' => array ( 'name' => '\'page\'', 'in' => '\'query\'', 'description' => '\'Page number for pagination\'', 'required' => 'false', 'type' => '\'integer\'', 'example' => '1', ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiParameter', 'args' => array ( 'name' => '\'limit\'', 'in' => '\'query\'', 'description' => '\'Number of items per page\'', 'required' => 'false', 'type' => '\'integer\'', 'example' => '20', ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiParameter', 'args' => array ( 'name' => '\'search\'', 'in' => '\'query\'', 'description' => '\'Search term to filter users\'', 'required' => 'false', 'type' => '\'string\'', 'example' => '\'john\'', ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '200', 'description' => '\'List of users retrieved successfully\'', 'example' => '[\'data\' => [[\'id\' => 1, \'name\' => \'John Doe\', \'email\' => \'john@example.com\', \'created_at\' => \'2024-01-01T00:00:00Z\']], \'pagination\' => [\'current_page\' => 1, \'total_pages\' => 5, \'total_items\' => 100]]', ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '401', 'description' => '\'Unauthorized - Invalid or missing authentication token\'', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showUser', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/users/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_users_show\'', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', 'args' => array ( 'summary' => '\'Get user by ID\'', 'description' => '\'Retrieve detailed information about a specific user\'', 'tags' => '[\'Users\']', ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiParameter', 'args' => array ( 'name' => '\'id\'', 'in' => '\'path\'', 'description' => '\'User ID\'', 'required' => 'true', 'type' => '\'integer\'', 'example' => '1', ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '200', 'description' => '\'User details retrieved successfully\'', 'example' => '[\'id\' => 1, \'name\' => \'John Doe\', \'email\' => \'john@example.com\', \'bio\' => \'Software developer\', \'created_at\' => \'2024-01-01T00:00:00Z\', \'updated_at\' => \'2024-01-01T00:00:00Z\']', ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '404', 'description' => '\'User not found\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createUser', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/users\'', 'method' => '\\App\\Framework\\Http\\Method::POST', 'name' => '\'api_users_create\'', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', 'args' => array ( 'summary' => '\'Create a new user\'', 'description' => '\'Create a new user account in the system\'', 'tags' => '[\'Users\']', ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiRequestBody', 'args' => array ( 'description' => '\'User data for creation\'', 'required' => 'true', 'example' => '[\'name\' => \'John Doe\', \'email\' => \'john@example.com\', \'password\' => \'secure_password\']', ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '201', 'description' => '\'User created successfully\'', 'example' => '[\'id\' => 3, \'name\' => \'John Doe\', \'email\' => \'john@example.com\', \'created_at\' => \'2024-01-01T00:00:00Z\']', ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '400', 'description' => '\'Validation error - Invalid input data\'', ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '409', 'description' => '\'Conflict - Email already exists\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'healthCheck', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/health\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_health\'', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', 'args' => array ( 'summary' => '\'Health check\'', 'description' => '\'Check the health status of the API\'', 'tags' => '[\'System\']', ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '200', 'description' => '\'API is healthy\'', 'example' => '[\'status\' => \'healthy\', \'timestamp\' => \'2024-01-01T00:00:00Z\', \'version\' => \'1.0.0\']', ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiSecurity', 'args' => array ( 0 => '\'apiKey\'', ), )), ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiSecurity', 'args' => array ( 0 => '\'bearerAuth\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageApiController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\Images\\ImageApiController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getImages', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/images\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getImage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/images/{ulid}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateImage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/images/{ulid}\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'searchImages', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/images/search\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/Images/ImageSlotController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\Images\\ImageSlotController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotRepository', 'type' => 'App\\Domain\\Media\\ImageSlotRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlots', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/image-slots\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlot', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/image-slots/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'assignImage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/image-slots/{id}/image\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'removeImage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/image-slots/{id}/image\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/MarkdownDocsController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\MarkdownDocsController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for serving Markdown-rendered API documentation */', 'namespace' => 'App\\Application\\Api', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'markdownrenderer' => 'App\\Framework\\Markdown\\MarkdownRenderer', 'staticpagemetaresolver' => 'App\\Framework\\Meta\\StaticPageMetaResolver', 'markdowngenerator' => 'App\\Framework\\OpenApi\\MarkdownGenerator', 'openapicontact' => 'App\\Framework\\OpenApi\\OpenApiContact', 'openapigenerator' => 'App\\Framework\\OpenApi\\OpenApiGenerator', 'openapiinfo' => 'App\\Framework\\OpenApi\\OpenApiInfo', 'openapilicense' => 'App\\Framework\\OpenApi\\OpenApiLicense', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'generator', 'type' => 'App\\Framework\\OpenApi\\OpenApiGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'markdownGenerator', 'type' => 'App\\Framework\\OpenApi\\MarkdownGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'markdownRenderer', 'type' => 'App\\Framework\\Markdown\\MarkdownRenderer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showMarkdownDocs', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/markdown\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_markdown\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showMarkdownDocsWithTheme', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'theme', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/markdown/{theme}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_markdown_themed\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testMarkdown', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/test\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_test\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listThemes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/themes\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_themes\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/SimpleMarkdownController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\SimpleMarkdownController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Simple controller to test Markdown rendering without complex dependencies */', 'namespace' => 'App\\Application\\Api', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'staticpagemetaresolver' => 'App\\Framework\\Meta\\StaticPageMetaResolver', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'simpleTest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/simple\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_simple\'', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'converterTest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/converter-test\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_converter_test\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markdownSimple', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/markdown-simple\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_markdown_simple\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markdownRenderer', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/markdown-renderer\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_markdown_renderer\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markdownFull', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/markdown-full\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_markdown_full\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'viewResultDebug', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/docs/viewresult-debug\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'api_docs_viewresult_debug\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/V1/UsersController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\V1\\UsersController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Users API Controller - Version 1.0 */', 'namespace' => 'App\\Application\\Api\\V1', 'uses' => array ( 'apiversionattribute' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'route' => 'App\\Framework\\Attributes\\Route', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jsonSerializer', 'type' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'index', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v1/users\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v1/users/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v1/users\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * This endpoint was deprecated in v1.5.0 and will be removed in v2.0.0 */', 'namespace' => 'App\\Application\\Api\\V1', 'uses' => array ( 'apiversionattribute' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'route' => 'App\\Framework\\Attributes\\Route', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v1/users/{id}/profile\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'args' => array ( 0 => '\'1.0.0\'', 'introducedIn' => '\'1.0.0\'', 'deprecatedIn' => '\'1.5.0\'', 'removedIn' => '\'2.0.0\'', ), )), ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'args' => array ( 0 => '\'1.0.0\'', 'introducedIn' => '\'1.0.0\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/V2/UsersController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\V2\\UsersController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Users API Controller - Version 2.0 */', 'namespace' => 'App\\Application\\Api\\V2', 'uses' => array ( 'apiversionattribute' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'route' => 'App\\Framework\\Attributes\\Route', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jsonSerializer', 'type' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'index', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v2/users\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v2/users/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v2/users\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * New endpoint in V2 - replaces the deprecated profile endpoint */', 'namespace' => 'App\\Application\\Api\\V2', 'uses' => array ( 'apiversionattribute' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'route' => 'App\\Framework\\Attributes\\Route', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/v2/users/{id}/profile\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'args' => array ( 0 => '\'2.0.0\'', 'introducedIn' => '\'2.0.0\'', ), )), ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'args' => array ( 0 => '\'2.0.0\'', 'introducedIn' => '\'2.0.0\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Api/VersionController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Api\\VersionController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * API Version information controller */', 'namespace' => 'App\\Application\\Api', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'apiversion' => 'App\\Framework\\Http\\Versioning\\ApiVersion', 'versioningconfig' => 'App\\Framework\\Http\\Versioning\\VersioningConfig', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versioningConfig', 'type' => 'App\\Framework\\Http\\Versioning\\VersioningConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jsonSerializer', 'type' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurrentVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/version\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSupportedVersions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/versions\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMigrationGuide', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/version/migrate\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Auth\\LoginRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\ControllerRequest', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'email', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Rules\\Email', 'args' => array ( ), )), ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'password', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginUser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Auth\\LoginUser', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/LoginUserHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Auth\\LoginUserHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'loginUser', 'type' => 'App\\Application\\Auth\\LoginUser', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandler', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Auth/ShowLogin.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Auth\\ShowLogin', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandBus', 'type' => 'App\\Framework\\CommandBus\\CommandBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/login\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'login', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Auth\\LoginRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/login\'', 1 => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Backend/RapidMail/Dashbord.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Backend\\RapidMail\\Dashbord', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rapidMailClient', 'type' => 'App\\Infrastructure\\Api\\RapidMail\\RapidMailClient', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/rapidmail\'', 'name' => '\'rapidmail\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/ContactRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Contact\\ContactRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\ControllerRequest', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'email', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Rules\\Email', 'args' => array ( ), )), ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'subject', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'message', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/ShowContact.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Contact\\ShowContact', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/kontakt\'', 'name' => '\'contact\'', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'senden', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\ActionResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Contact\\ContactRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandBus', 'type' => 'App\\Framework\\CommandBus\\CommandBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/kontakt\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiEndpoint', 'args' => array ( 'summary' => '\'Submit contact form\'', 'description' => '\'Submit a contact form message\'', 'tags' => '[\'Contact\']', ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiRequestBody', 'args' => array ( 'description' => '\'Contact form data\'', 'required' => 'true', 'example' => '[\'name\' => \'John Doe\', \'email\' => \'john@example.com\', \'subject\' => \'Question about services\', \'message\' => \'I would like to know more about your services.\']', ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '200', 'description' => '\'Contact form submitted successfully\'', 'example' => '[\'success\' => true, \'message\' => \'Thank you for your message\']', ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\OpenApi\\Attributes\\ApiResponse', 'args' => array ( 'statusCode' => '400', 'description' => '\'Validation error - Invalid form data\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContact.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Contact\\StoreContact', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subject', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Contact/StoreContactHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Contact\\StoreContactHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'contactRepository', 'type' => 'App\\Domain\\Contact\\ContactRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'App\\Application\\Contact\\StoreContact', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandler', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/CsrfController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Controller\\CsrfController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for CSRF token management * Provides API endpoints for token refresh and validation */', 'namespace' => 'App\\Application\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'sessioninterface' => 'App\\Framework\\Http\\Session\\SessionInterface', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'session', 'type' => 'App\\Framework\\Http\\Session\\SessionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'refreshToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a fresh CSRF token for a form * Used by JavaScript to refresh tokens before they expire */', 'namespace' => 'App\\Application\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'sessioninterface' => 'App\\Framework\\Http\\Session\\SessionInterface', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/csrf/refresh\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTokenInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get information about current CSRF token status * Useful for debugging and monitoring */', 'namespace' => 'App\\Application\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'sessioninterface' => 'App\\Framework\\Http\\Session\\SessionInterface', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/csrf/info\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/DemoController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Controller\\DemoController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'permissionsDemo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/demo/permissions\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'canvasDemo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/demo/canvas\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'apiManagerDemo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/demo/api-manager\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Controller/QrCodeTestController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Controller\\QrCodeTestController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * QR Code Test Controller * * Displays example QR codes for testing purposes in development */', 'namespace' => 'App\\Application\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', 'htmlresult' => 'App\\Framework\\Router\\Result\\HtmlResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'qrCodeGenerator', 'type' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showTestPage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Show QR code test page with multiple examples */', 'namespace' => 'App\\Application\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', 'htmlresult' => 'App\\Framework\\Router\\Result\\HtmlResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\HtmlResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/test/qr-codes\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateTestQrCode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate individual QR code for API testing */', 'namespace' => 'App\\Application\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', 'htmlresult' => 'App\\Framework\\Router\\Result\\HtmlResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\HtmlResult|App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/test/qr-code\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Design/Controller/DesignSystemController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Design\\Controller\\DesignSystemController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Design System Documentation Controller */', 'namespace' => 'App\\Application\\Design\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'componentcategory' => 'App\\Framework\\Design\\Component\\ComponentCategory', 'componentscanner' => 'App\\Framework\\Design\\ComponentScanner', 'designsystemanalyzer' => 'App\\Framework\\Design\\Service\\DesignSystemAnalyzer', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'metadata' => 'App\\Framework\\Meta\\MetaData', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyzer', 'type' => 'App\\Framework\\Design\\Service\\DesignSystemAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileScanner', 'type' => 'App\\Framework\\Filesystem\\FileScanner', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'componentScanner', 'type' => 'App\\Framework\\Design\\ComponentScanner', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashboard', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tokens', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system/tokens\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'colors', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system/colors\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'components', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system/components\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'componentDetail', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'componentName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system/components/{componentName}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'conventions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system/conventions\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'roadmap', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/design-system/roadmap\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'export', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/design-system/export\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeFiles', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/design-system/analyze\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/EPK/ShowEpk.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\EPK\\ShowEpk', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'epk', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\ActionResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/epk\'', 'name' => '\'epk\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Examples/SimpleParameterExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Examples\\SimpleParameterExample', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserById', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beispiel: Type-safe Parameter-Zugriff * URL: /api/user/123?include=profile */', 'namespace' => 'App\\Application\\Examples', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameterconstraints' => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', 'routeparameters' => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/user/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listPosts', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beispiel: Mit Parameter-Validation * URL: /api/posts?page=2&limit=10 */', 'namespace' => 'App\\Application\\Examples', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameterconstraints' => 'App\\Framework\\Router\\ValueObjects\\ParameterConstraints', 'routeparameters' => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'App\\Framework\\Router\\ValueObjects\\RouteParameters', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/posts\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/FeatureFlags/FeatureFlagController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\FeatureFlags\\FeatureFlagController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for managing feature flags */', 'namespace' => 'App\\Application\\FeatureFlags', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'featureflag' => 'App\\Framework\\FeatureFlags\\FeatureFlag', 'featureflagmanager' => 'App\\Framework\\FeatureFlags\\FeatureFlagManager', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'flagManager', 'type' => 'App\\Framework\\FeatureFlags\\FeatureFlagManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'index', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/feature-flags\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/feature-flags/{name}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'enable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/feature-flags/{name}/enable\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'disable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/feature-flags/{name}/disable\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/feature-flags/{name}/percentage\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/feature-flags/{name}\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\GraphQL\\GraphQLController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * GraphQL endpoint controller */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'graphqlexecutor' => 'App\\Framework\\GraphQL\\GraphQLExecutor', 'graphqlschema' => 'App\\Framework\\GraphQL\\GraphQLSchema', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'schema', 'type' => 'App\\Framework\\GraphQL\\GraphQLSchema', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executor', 'type' => 'App\\Framework\\GraphQL\\GraphQLExecutor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jsonSerializer', 'type' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/graphql\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'playground', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/graphql\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'schema', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/graphql/schema\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/GraphQLSchemaBuilder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\GraphQL\\GraphQLSchemaBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Builds the GraphQL schema with all types, queries, and mutations */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'graphqlargument' => 'App\\Framework\\GraphQL\\GraphQLArgument', 'graphqlfield' => 'App\\Framework\\GraphQL\\GraphQLField', 'graphqlfieldtype' => 'App\\Framework\\GraphQL\\GraphQLFieldType', 'graphqlschema' => 'App\\Framework\\GraphQL\\GraphQLSchema', 'graphqltype' => 'App\\Framework\\GraphQL\\GraphQLType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userResolvers', 'type' => 'App\\Application\\GraphQL\\UserResolvers', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'build', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\GraphQL\\GraphQLSchema', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserResolvers.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\GraphQL\\UserResolvers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * GraphQL resolvers for User operations */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userService', 'type' => 'App\\Application\\User\\UserService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'users', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $args * @return array> */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'root', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'user', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $args * @return array|null */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'root', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $args * @return array */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'root', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $args * @return array|null */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'root', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $args */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'root', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'userStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $args * @return array */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( 'userservice' => 'App\\Application\\User\\UserService', 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'root', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/GraphQL/UserService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\GraphQL\\UserService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service for User operations (demo implementation) */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findUsers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $filters * @return array> */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findById', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array|null */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $input * @return array */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $input * @return array|null */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteUser', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\GraphQL', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Health/HealthCheckController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Health\\HealthCheckController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'database', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'redisPool', 'type' => 'App\\Framework\\Redis\\RedisConnectionPool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dbHealthChecker', 'type' => 'App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => 'App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'check', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/health\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'health_check\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'liveness', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/health/live\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'health_liveness\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'readiness', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/health/ready\'', 'method' => '\\App\\Framework\\Http\\Method::GET', 'name' => '\'health_readiness\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/BatchController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Http\\BatchController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for handling batch API requests */', 'namespace' => 'App\\Application\\Http', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'batchprocessor' => 'App\\Framework\\Http\\Batch\\BatchProcessor', 'batchrequest' => 'App\\Framework\\Http\\Batch\\BatchRequest', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchProcessor', 'type' => 'App\\Framework\\Http\\Batch\\BatchProcessor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jsonSerializer', 'type' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processBatch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/batch\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBatchInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/batch/info\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/ChatController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Http\\Controllers\\ChatController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'chatWebSocket', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\WebSocketResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/chat/websocket\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/NotificationController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Http\\Controllers\\NotificationController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller für Echtzeit-Benachrichtigungen über Server-Sent Events */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'auth' => 'App\\Framework\\Auth\\Auth', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', 'method' => 'App\\Framework\\Http\\Method', 'ssestream' => 'App\\Framework\\Http\\SseStream', 'status' => 'App\\Framework\\Http\\Status', 'sseresult' => 'App\\Framework\\Router\\Result\\SseResult', 'sseresultwithcallback' => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'notificationStream', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt einen SSE-Stream für allgemeine Benachrichtigungen bereit */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'auth' => 'App\\Framework\\Auth\\Auth', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', 'method' => 'App\\Framework\\Http\\Method', 'ssestream' => 'App\\Framework\\Http\\SseStream', 'status' => 'App\\Framework\\Http\\Status', 'sseresult' => 'App\\Framework\\Router\\Result\\SseResult', 'sseresultwithcallback' => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\SseResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/notifications/stream\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'userNotifications', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt einen benutzer-spezifischen SSE-Stream bereit */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'auth' => 'App\\Framework\\Auth\\Auth', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', 'method' => 'App\\Framework\\Http\\Method', 'ssestream' => 'App\\Framework\\Http\\SseStream', 'status' => 'App\\Framework\\Http\\Status', 'sseresult' => 'App\\Framework\\Router\\Result\\SseResult', 'sseresultwithcallback' => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\SseResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/notifications/user/{userId}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'liveNotifications', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt einen Live-Stream mit dynamischen Updates bereit */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'auth' => 'App\\Framework\\Auth\\Auth', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', 'method' => 'App\\Framework\\Http\\Method', 'ssestream' => 'App\\Framework\\Http\\SseStream', 'status' => 'App\\Framework\\Http\\Status', 'sseresult' => 'App\\Framework\\Router\\Result\\SseResult', 'sseresultwithcallback' => 'App\\Framework\\Router\\Result\\SseResultWithCallback', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\SseResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/notifications/live\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Controllers/QrCodeController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Http\\Controllers\\QrCodeController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * QR Code API Controller * * Provides API endpoints for QR code generation using the Framework QrCode module */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'response' => 'App\\Framework\\Http\\Response', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'qrCodeGenerator', 'type' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSvg', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate QR code as SVG */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'response' => 'App\\Framework\\Http\\Response', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/qrcode/svg\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateDataUri', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate QR code as Data URI (base64 encoded SVG) */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'response' => 'App\\Framework\\Http\\Response', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/qrcode/datauri\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze data and get QR code recommendations */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'response' => 'App\\Framework\\Http\\Response', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/qrcode/analyze\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateTotpQrCode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate TOTP QR code specifically optimized for authenticator apps */', 'namespace' => 'App\\Application\\Http\\Controllers', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'response' => 'App\\Framework\\Http\\Response', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'status' => 'App\\Framework\\Http\\Status', 'errorcorrectionlevel' => 'App\\Framework\\QrCode\\ErrorCorrectionLevel', 'qrcodegenerator' => 'App\\Framework\\QrCode\\QrCodeGenerator', 'qrcodeversion' => 'App\\Framework\\QrCode\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/qrcode/totp\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Examples/BatchExampleController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Http\\Examples\\BatchExampleController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example controller for demonstrating batch API functionality */', 'namespace' => 'App\\Application\\Http\\Examples', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'jsonserializerconfig' => 'App\\Framework\\Serializer\\Json\\JsonSerializerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jsonSerializer', 'type' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUser', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/examples/users/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createPost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/examples/posts\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updatePost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/examples/posts/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deletePost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/examples/posts/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'slowEndpoint', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/examples/slow\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Http/Smartlink.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Http\\Smartlink', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandBus', 'type' => 'App\\Framework\\CommandBus\\CommandBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actionRegistry', 'type' => 'App\\Framework\\Smartlinks\\Actions\\ActionRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'smartlinkService', 'type' => 'App\\Framework\\Smartlinks\\Services\\SmartlinkService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handler', 'type' => 'App\\Framework\\Smartlinks\\Commands\\GenerateSmartlinkHandler', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\ActionResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'token', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/smartlink/{token}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/smartlink/{token}\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/AdaptiveVideoStream.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Media\\AdaptiveVideoStream', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'adaptiveStreamingController', 'type' => 'App\\Framework\\Http\\Streaming\\AdaptiveStreamingController', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'manifestAutoFormat', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\AdaptiveStreamResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'videoId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/videos/{videoId}/manifest\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hlsManifest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\AdaptiveStreamResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'videoId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/videos/{videoId}/manifest.m3u8\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashManifest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\AdaptiveStreamResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'videoId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/videos/{videoId}/manifest.mpd\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hlsMediaPlaylist', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\AdaptiveStreamResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'videoId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'quality', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/videos/{videoId}/{quality}.m3u8\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'segment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\StreamResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'videoId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'quality', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'segment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/videos/{videoId}/{quality}/{segment}/\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/MediaCleanupService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Media\\MediaCleanupService', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageProcessor', 'type' => 'App\\Domain\\Media\\ImageProcessor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageVariantRepository', 'type' => 'App\\Domain\\Media\\ImageVariantRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanupUnusedFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cleanup Media Files that are not saved to Database */', 'namespace' => 'App\\Application\\Media', 'uses' => array ( 'imageprocessor' => 'App\\Domain\\Media\\ImageProcessor', 'imagerepository' => 'App\\Domain\\Media\\ImageRepository', 'imagevariantrepository' => 'App\\Domain\\Media\\ImageVariantRepository', 'filesystemiterator' => 'FilesystemIterator', 'recursivedirectoryiterator' => 'RecursiveDirectoryIterator', 'recursiveiteratoriterator' => 'RecursiveIteratorIterator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanupEmptyDirectories', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Delete empty folders */', 'namespace' => 'App\\Application\\Media', 'uses' => array ( 'imageprocessor' => 'App\\Domain\\Media\\ImageProcessor', 'imagerepository' => 'App\\Domain\\Media\\ImageRepository', 'imagevariantrepository' => 'App\\Domain\\Media\\ImageVariantRepository', 'filesystemiterator' => 'FilesystemIterator', 'recursivedirectoryiterator' => 'RecursiveDirectoryIterator', 'recursiveiteratoriterator' => 'RecursiveIteratorIterator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createImageVariants', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create image variants for all images */', 'namespace' => 'App\\Application\\Media', 'uses' => array ( 'imageprocessor' => 'App\\Domain\\Media\\ImageProcessor', 'imagerepository' => 'App\\Domain\\Media\\ImageRepository', 'imagevariantrepository' => 'App\\Domain\\Media\\ImageVariantRepository', 'filesystemiterator' => 'FilesystemIterator', 'recursivedirectoryiterator' => 'RecursiveDirectoryIterator', 'recursiveiteratoriterator' => 'RecursiveIteratorIterator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fullCleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Full cleanup - files, directories and variant creation */', 'namespace' => 'App\\Application\\Media', 'uses' => array ( 'imageprocessor' => 'App\\Domain\\Media\\ImageProcessor', 'imagerepository' => 'App\\Domain\\Media\\ImageRepository', 'imagevariantrepository' => 'App\\Domain\\Media\\ImageVariantRepository', 'filesystemiterator' => 'FilesystemIterator', 'recursivedirectoryiterator' => 'RecursiveDirectoryIterator', 'recursiveiteratoriterator' => 'RecursiveIteratorIterator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowImage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Media\\ShowImage', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageVariantRepository', 'type' => 'App\\Domain\\Media\\ImageVariantRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\FileResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/images/{filename}\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Media/ShowVideo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Media\\ShowVideo', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Responses\\StreamResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/videos/{filename}\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Metrics/MetricsController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Metrics\\MetricsController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for exposing application metrics in various formats */', 'namespace' => 'App\\Application\\Metrics', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'headers' => 'App\\Framework\\Http\\Headers', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonformatter' => 'App\\Framework\\Metrics\\Formatters\\JsonFormatter', 'metricsformatter' => 'App\\Framework\\Metrics\\Formatters\\MetricsFormatter', 'openmetricsformatter' => 'App\\Framework\\Metrics\\Formatters\\OpenMetricsFormatter', 'prometheusformatter' => 'App\\Framework\\Metrics\\Formatters\\PrometheusFormatter', 'statsdformatter' => 'App\\Framework\\Metrics\\Formatters\\StatsDFormatter', 'metricscollector' => 'App\\Framework\\Metrics\\MetricsCollector', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Metrics\\MetricsCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'metrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/metrics\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'health', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/metrics/health\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/EventHandlerExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Newsletter\\SignUp\\EventHandlerExample', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beispiel für einen Event-Handler für das UserWasSignedUp-Event */', 'namespace' => 'App\\Application\\Newsletter\\SignUp', 'uses' => array ( 'eventhandler' => 'App\\Framework\\EventBus\\EventHandler', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleUserSignedUp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Behandelt das UserWasSignedUp-Event * * @param UserWasSignedUp $event Das Event * @return void */', 'namespace' => 'App\\Application\\Newsletter\\SignUp', 'uses' => array ( 'eventhandler' => 'App\\Framework\\EventBus\\EventHandler', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Application\\Newsletter\\SignUp\\UserWasSignedUp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\EventBus\\EventHandler', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignup.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Newsletter\\SignUp\\NewsletterSignup', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandBus', 'type' => 'App\\Framework\\CommandBus\\CommandBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ContentNegotiationResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Newsletter\\SignUp\\NewsletterSignupRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/newsletter/register\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Newsletter\\SignUp\\NewsletterSignupHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventBus', 'type' => 'App\\Framework\\EventBus\\EventBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'App\\Application\\Newsletter\\SignUp\\SignupUserToNewsletter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandler', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/NewsletterSignupRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Newsletter\\SignUp\\NewsletterSignupRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\ControllerRequest', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'email', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Rules\\Email', 'args' => array ( ), )), ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Rules\\StringLength', 'args' => array ( 'min' => '3', 'max' => '255', ), )), ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'consent', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Rules\\IsTrue', 'args' => array ( ), )), ), 'hooks' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/SignupUserToNewsletter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Newsletter\\SignUp\\SignupUserToNewsletter', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\ShouldQueue', 'args' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Newsletter/SignUp/UserWasSignedUp.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Newsletter\\SignUp\\UserWasSignedUp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event, das ausgelöst wird, wenn ein Benutzer für den Newsletter angemeldet wurde */', 'namespace' => 'App\\Application\\Newsletter\\SignUp', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Performance/Http/Controller/PerformanceController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Performance\\Http\\Controller\\PerformanceController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceService', 'type' => 'App\\Framework\\Performance\\PerformanceService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/summary\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/metrics\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowestOperations', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/slowest\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReport', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/report\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRequestStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/stats\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/reset\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/memory\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSystemInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/system\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConfig', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/config\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/performance/export\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Search/CreateIndexRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Search\\CreateIndexRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Request object for creating search indexes */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'searchfieldconfig' => 'App\\Framework\\Search\\SearchFieldConfig', 'searchfieldtype' => 'App\\Framework\\Search\\SearchFieldType', 'searchindexconfig' => 'App\\Framework\\Search\\SearchIndexConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array> $fields * @param array $settings */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'searchfieldconfig' => 'App\\Framework\\Search\\SearchFieldConfig', 'searchfieldtype' => 'App\\Framework\\Search\\SearchFieldType', 'searchindexconfig' => 'App\\Framework\\Search\\SearchIndexConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fields', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'settings', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $data */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'searchfieldconfig' => 'App\\Framework\\Search\\SearchFieldConfig', 'searchfieldtype' => 'App\\Framework\\Search\\SearchFieldType', 'searchindexconfig' => 'App\\Framework\\Search\\SearchIndexConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toIndexConfig', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Search\\SearchIndexConfig', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'defaultForEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'searchfieldconfig' => 'App\\Framework\\Search\\SearchFieldConfig', 'searchfieldtype' => 'App\\Framework\\Search\\SearchFieldType', 'searchindexconfig' => 'App\\Framework\\Search\\SearchIndexConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Search\\SearchController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * REST API controller for search functionality */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'searchService', 'type' => 'App\\Framework\\Search\\SearchService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'search', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Search for documents * GET /api/search/{entityType} */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'indexDocument', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Index a single document * POST /api/search/{entityType}/{id} */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bulkIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bulk index multiple documents * POST /api/search/{entityType}/bulk */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/bulk\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateDocument', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Update a document * PUT /api/search/{entityType}/{id} */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteDocument', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Delete a document from the search index * DELETE /api/search/{entityType}/{id} */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get search engine statistics * GET /api/search/_stats */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/_stats\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndexStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index-specific statistics * GET /api/search/{entityType}/_stats */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/_stats\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create or update an index * PUT /api/search/{entityType}/_index */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/_index\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Delete an index * DELETE /api/search/{entityType}/_index */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'searchdocument' => 'App\\Framework\\Search\\SearchDocument', 'searchfilter' => 'App\\Framework\\Search\\SearchFilter', 'searchfiltertype' => 'App\\Framework\\Search\\SearchFilterType', 'searchservice' => 'App\\Framework\\Search\\SearchService', 'searchsortdirection' => 'App\\Framework\\Search\\SearchSortDirection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/search/{entityType}/_index\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Search/SearchRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Search\\SearchRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a search request with validation */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $filters * @param array $boosts * @param array $fields * @param array $highlight */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'boosts', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fields', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'highlight', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sortBy', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sortDirection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sortByRelevance', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableHighlighting', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableFuzzy', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minScore', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHttpRequest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\Search', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ExceptionHandlers/SecurityExceptionHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\ExceptionHandlers\\SecurityExceptionHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Guards/AuthenticationGuard.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\Guards\\AuthenticationGuard', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userRepository', 'type' => 'App\\Framework\\Database\\Example\\UserRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authenticate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\User\\User', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logout', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'App\\Domain\\User\\User', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Middleware/SecurityEventMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\Middleware\\SecurityEventMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\HttpMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\MiddlewareContext', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Http\\MiddlewareContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'App\\Framework\\Http\\Next', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stateManager', 'type' => 'App\\Framework\\Http\\RequestStateManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Application\\Security\\OWASPSecurityEvent', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOWASPEventIdentifier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den OWASP-konformen Event-Identifier zurück */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOWASPLogLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das entsprechende Log-Level zurück */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine menschenlesbare Beschreibung des Events zurück */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt strukturierte Event-Daten für das Logging zurück * @return array */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\OWASPSecurityEventFactory', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'applicationId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFromSecurityEvent', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Application\\Security\\SecurityEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFromDetection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create OWASP Log Format from WAF Detection * * This method consolidates WAF detections with OWASP security events, * eliminating the need for separate event systems. */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasplogformat' => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'owaspEvent', 'type' => 'App\\Application\\Security\\OWASPSecurityEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/OWASPSecurityEventLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\OWASPSecurityEventLogger', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'applicationId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logSecurityEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Universeller Event-Handler für alle OWASP Security Events */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'owasplogformat' => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Application\\Security\\OWASPSecurityEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\SecurityContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beispiel für Logeintrag: * { * \'timestamp\': \'2025-06-01T00:52:10Z\', * \'event\': \'auth.login.failed\', * \'ip\': \'203.0.113.42\', * \'user_agent\': \'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)\', * \'request_uri\': \'/login\', * \'method\': \'POST\', * \'user_id\': null, * \'email\': \'j***@example.com\', * \'session_id\': \'abc123\', * \'referrer\': \'https://example.com/login\', * \'result\': \'fail\', * \'request_id\': \'req-3d92fcb45e\' * } * */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'sessioninterface' => 'App\\Framework\\Http\\Session\\SessionInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userAgent', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'method', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'uri', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'referrer', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromGlobals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromServerEnvironment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create SecurityContext from ServerEnvironment (preferred) */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'sessioninterface' => 'App\\Framework\\Http\\Session\\SessionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'server', 'type' => 'App\\Framework\\Http\\ServerEnvironment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'session', 'type' => '?App\\Framework\\Http\\Session\\SessionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Application\\Security\\SecurityEvent', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'type', ), 'phpDoc' => NULL, 'type' => 'App\\Application\\Security\\SecurityEventType', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\SecurityEventLogger', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventFactory', 'type' => '?App\\Application\\Security\\OWASPSecurityEventFactory', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'log', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Application\\Security\\SecurityEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/SecurityEventType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Application\\Security\\SecurityEventType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOGIN_FAILED', 'value' => '\'auth.login.failed\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOGIN_SUCCEEDED', 'value' => '\'auth.login.succeeded\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOGOUT', 'value' => '\'auth.logout\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PASSWORD_CHANGED', 'value' => '\'account.password.changed\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'EMAIL_CHANGED', 'value' => '\'account.email.changed\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'USER_DELETED', 'value' => '\'account.deleted\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ACCESS_DENIED', 'value' => '\'access.denied\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CSRF_VIOLATION', 'value' => '\'access.csrf.violation\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ADMIN_ACTION', 'value' => '\'system.admin.action\'', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONFIG_CHANGED', 'value' => '\'system.config.changed\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/FileUploadSecurityService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\Services\\FileUploadSecurityService', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateUpload', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/Services/InputValidationService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\Services\\InputValidationService', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateInput', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fieldName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rules', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sanitizeInput', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskedEmail.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\MaskedEmail', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromStringWithStrategy', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Application\\Security\\ValueObjects\\MaskingStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaskedValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOriginal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/MaskingStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\MaskingStrategy', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STANDARD', 'value' => '\'standard\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PARTIAL', 'value' => '\'partial\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DOMAIN_ONLY', 'value' => '\'domain_only\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HASH', 'value' => '\'hash\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPEventIdentifier.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authenticationSuccess', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authenticationFailure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sessionTermination', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'passwordChange', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'accountLocked', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authorizationFailure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'resource', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'privilegeEscalation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromRole', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'toRole', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inputValidationFailure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'field', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'maliciousInput', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attackType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fileUploadFailure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sessionHijacking', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sessionTimeout', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'malwareDetected', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'malwareType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'auditFailure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sessionFixation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cryptographicFailure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suspiciousNetworkActivity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'activityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'systemAnomaly', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'anomalyType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'csrfViolation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogFormat.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\OWASPLogFormat', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'datetime', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'appid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useragent', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceIp', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hostIp', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hostname', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'protocol', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'port', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestUri', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestMethod', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'region', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'geo', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'appid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toJson', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/OWASPLogLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DEBUG', 'value' => '\'DEBUG\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INFO', 'value' => '\'INFO\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WARN', 'value' => '\'WARN\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ERROR', 'value' => '\'ERROR\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FATAL', 'value' => '\'FATAL\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromSecurityEventType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Application\\Security\\SecurityEventType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/RequestContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromGlobals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHostIp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHostname', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProtocol', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPort', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRequestUri', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRequestMethod', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getGeo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/ValueObjects/SecurityContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromGlobals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceIp', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userAgent', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSourceIp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserAgent', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSessionId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRequestId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimestamp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafEventProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\WafEventProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WAF Event Processor * * Processes WAF detections and converts them to OWASP Security Events * using the consolidated bridge system. This eliminates duplication * between WAF and OWASP event handling. */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bridge', 'type' => 'App\\Application\\Security\\WafOWASPEventBridge', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventBus', 'type' => 'App\\Framework\\EventBus\\EventBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processLayerResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process WAF Layer Result and convert all detections to OWASP events * @return array */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'layerResult', 'type' => 'App\\Framework\\Waf\\LayerResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityContext', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processDetection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process single WAF Detection and convert to OWASP event */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\OWASPSecurityEvent', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityContext', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processDetectionCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process collection of WAF detections * @return array */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detections', 'type' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityContext', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processBatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process WAF detections with batch optimization * @param array $layerResults * @return array */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'layerResults', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityContext', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldProcessDetection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if detection should be processed based on severity and configuration */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createRequestContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create RequestContext from HTTP request data */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createSecurityContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create SecurityContext from security-related data */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProcessingStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get processing statistics */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\WafFeedbackController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for WAF feedback API endpoints */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detectionfeedback' => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param FeedbackService $feedbackService Service for handling WAF feedback */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detectionfeedback' => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'feedbackService', 'type' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'submitFeedback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Submit feedback for a WAF detection */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detectionfeedback' => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/security/waf/feedback\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFeedbackForDetection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get feedback for a specific detection */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detectionfeedback' => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detectionId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/security/waf/feedback/{detectionId}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFeedbackStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get feedback statistics */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detectionfeedback' => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/security/waf/feedback/stats\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecentFeedback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recent feedback */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detectionfeedback' => 'App\\Framework\\Waf\\Feedback\\DetectionFeedback', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/security/waf/feedback/recent\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafFeedbackDashboardController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\WafFeedbackDashboardController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for the WAF feedback dashboard */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'feedbackrepositoryinterface' => 'App\\Framework\\Waf\\Feedback\\FeedbackRepositoryInterface', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param FeedbackRepositoryInterface $repository Repository for accessing feedback data * @param FeedbackService $feedbackService Service for handling WAF feedback */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'feedbackrepositoryinterface' => 'App\\Framework\\Waf\\Feedback\\FeedbackRepositoryInterface', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'repository', 'type' => 'App\\Framework\\Waf\\Feedback\\FeedbackRepositoryInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'feedbackService', 'type' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showDashboard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Show the WAF feedback dashboard */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'feedbackrepositoryinterface' => 'App\\Framework\\Waf\\Feedback\\FeedbackRepositoryInterface', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/security/waf/feedback\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showCategoryFeedback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Show detailed feedback for a specific category */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'feedbackrepositoryinterface' => 'App\\Framework\\Waf\\Feedback\\FeedbackRepositoryInterface', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/security/waf/feedback/category/{category}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showLearningHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Show feedback learning history */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'method' => 'App\\Framework\\Http\\Method', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'feedbackrepositoryinterface' => 'App\\Framework\\Waf\\Feedback\\FeedbackRepositoryInterface', 'feedbackservice' => 'App\\Framework\\Waf\\Feedback\\FeedbackService', 'feedbacktype' => 'App\\Framework\\Waf\\Feedback\\FeedbackType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/security/waf/feedback/learning\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Security/WafOWASPEventBridge.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Security\\WafOWASPEventBridge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WAF-OWASP Event Bridge * * Consolidates the WAF Detection system with the existing OWASP Security Event framework * to eliminate duplication and provide unified security event handling. */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'authenticationfailedevent' => 'App\\Application\\Security\\Events\\Auth\\AuthenticationFailedEvent', 'inputvalidationfailureevent' => 'App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent', 'maliciousinputdetectedevent' => 'App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent', 'sqlinjectionattemptevent' => 'App\\Application\\Security\\Events\\Input\\SqlInjectionAttemptEvent', 'xssattemptevent' => 'App\\Application\\Security\\Events\\Input\\XssAttemptEvent', 'suspiciousnetworkactivityevent' => 'App\\Application\\Security\\Events\\Network\\SuspiciousNetworkActivityEvent', 'systemanomalyevent' => 'App\\Application\\Security\\Events\\System\\SystemAnomalyEvent', 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventFactory', 'type' => 'App\\Application\\Security\\OWASPSecurityEventFactory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventLogger', 'type' => 'App\\Application\\Security\\OWASPSecurityEventLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processWafDetection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert WAF Detection to OWASP Security Event and log it */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'authenticationfailedevent' => 'App\\Application\\Security\\Events\\Auth\\AuthenticationFailedEvent', 'inputvalidationfailureevent' => 'App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent', 'maliciousinputdetectedevent' => 'App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent', 'sqlinjectionattemptevent' => 'App\\Application\\Security\\Events\\Input\\SqlInjectionAttemptEvent', 'xssattemptevent' => 'App\\Application\\Security\\Events\\Input\\XssAttemptEvent', 'suspiciousnetworkactivityevent' => 'App\\Application\\Security\\Events\\Network\\SuspiciousNetworkActivityEvent', 'systemanomalyevent' => 'App\\Application\\Security\\Events\\System\\SystemAnomalyEvent', 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\OWASPSecurityEvent', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityContext', 'type' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'convertDetectionToOWASPEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert WAF Detection to appropriate OWASP Security Event */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'authenticationfailedevent' => 'App\\Application\\Security\\Events\\Auth\\AuthenticationFailedEvent', 'inputvalidationfailureevent' => 'App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent', 'maliciousinputdetectedevent' => 'App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent', 'sqlinjectionattemptevent' => 'App\\Application\\Security\\Events\\Input\\SqlInjectionAttemptEvent', 'xssattemptevent' => 'App\\Application\\Security\\Events\\Input\\XssAttemptEvent', 'suspiciousnetworkactivityevent' => 'App\\Application\\Security\\Events\\Network\\SuspiciousNetworkActivityEvent', 'systemanomalyevent' => 'App\\Application\\Security\\Events\\System\\SystemAnomalyEvent', 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\OWASPSecurityEvent', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestContext', 'type' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createOWASPEventIdentifier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create OWASP Event Identifier from WAF Detection */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'authenticationfailedevent' => 'App\\Application\\Security\\Events\\Auth\\AuthenticationFailedEvent', 'inputvalidationfailureevent' => 'App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent', 'maliciousinputdetectedevent' => 'App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent', 'sqlinjectionattemptevent' => 'App\\Application\\Security\\Events\\Input\\SqlInjectionAttemptEvent', 'xssattemptevent' => 'App\\Application\\Security\\Events\\Input\\XssAttemptEvent', 'suspiciousnetworkactivityevent' => 'App\\Application\\Security\\Events\\Network\\SuspiciousNetworkActivityEvent', 'systemanomalyevent' => 'App\\Application\\Security\\Events\\System\\SystemAnomalyEvent', 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mapToOWASPLogLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map WAF Detection Severity to OWASP Log Level */', 'namespace' => 'App\\Application\\Security', 'uses' => array ( 'authenticationfailedevent' => 'App\\Application\\Security\\Events\\Auth\\AuthenticationFailedEvent', 'inputvalidationfailureevent' => 'App\\Application\\Security\\Events\\Input\\InputValidationFailureEvent', 'maliciousinputdetectedevent' => 'App\\Application\\Security\\Events\\Input\\MaliciousInputDetectedEvent', 'sqlinjectionattemptevent' => 'App\\Application\\Security\\Events\\Input\\SqlInjectionAttemptEvent', 'xssattemptevent' => 'App\\Application\\Security\\Events\\Input\\XssAttemptEvent', 'suspiciousnetworkactivityevent' => 'App\\Application\\Security\\Events\\Network\\SuspiciousNetworkActivityEvent', 'systemanomalyevent' => 'App\\Application\\Security\\Events\\System\\SystemAnomalyEvent', 'owaspeventidentifier' => 'App\\Application\\Security\\ValueObjects\\OWASPEventIdentifier', 'owasploglevel' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'requestcontext' => 'App\\Application\\Security\\ValueObjects\\RequestContext', 'securitycontext' => 'App\\Application\\Security\\ValueObjects\\SecurityContext', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Security\\ValueObjects\\OWASPLogLevel', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detection', 'type' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Service/QrCodeService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Service\\QrCodeService', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'generator', 'type' => 'App\\Domain\\QrCode\\Service\\QrCodeGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateQrCode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert einen QR-Code für die angegebenen Daten * * @param string $data Die zu kodierenden Daten * @param ErrorCorrectionLevel $errorLevel Fehlerkorrektur-Level * @param int|null $version Spezifische QR-Code-Version (optional) * @return QrCodeMatrix Die generierte QR-Code-Matrix */', 'namespace' => 'App\\Application\\Service', 'uses' => array ( 'qrcode' => 'App\\Domain\\QrCode\\QrCode', 'qrcodegenerator' => 'App\\Domain\\QrCode\\Service\\QrCodeGenerator', 'errorcorrectionlevel' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'qrcodeconfig' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeConfig', 'qrcodematrix' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix', 'qrcodeversion' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errorLevel', 'type' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSvg', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert einen QR-Code als SVG * * @param string $data Die zu kodierenden Daten * @param ErrorCorrectionLevel $errorLevel Fehlerkorrektur-Level * @param QrCodeConfig|null $config Konfigurationseinstellungen * @return string SVG-Darstellung des QR-Codes */', 'namespace' => 'App\\Application\\Service', 'uses' => array ( 'qrcode' => 'App\\Domain\\QrCode\\QrCode', 'qrcodegenerator' => 'App\\Domain\\QrCode\\Service\\QrCodeGenerator', 'errorcorrectionlevel' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'qrcodeconfig' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeConfig', 'qrcodematrix' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix', 'qrcodeversion' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errorLevel', 'type' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Domain\\QrCode\\ValueObject\\QrCodeConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generatePng', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert einen QR-Code als PNG * * @param string $data Die zu kodierenden Daten * @param ErrorCorrectionLevel $errorLevel Fehlerkorrektur-Level * @param QrCodeConfig|null $config Konfigurationseinstellungen * @return string PNG-Binärdaten des QR-Codes */', 'namespace' => 'App\\Application\\Service', 'uses' => array ( 'qrcode' => 'App\\Domain\\QrCode\\QrCode', 'qrcodegenerator' => 'App\\Domain\\QrCode\\Service\\QrCodeGenerator', 'errorcorrectionlevel' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'qrcodeconfig' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeConfig', 'qrcodematrix' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix', 'qrcodeversion' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errorLevel', 'type' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Domain\\QrCode\\ValueObject\\QrCodeConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateAscii', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert einen QR-Code als ASCII-Art * * @param string $data Die zu kodierenden Daten * @param ErrorCorrectionLevel $errorLevel Fehlerkorrektur-Level * @return string ASCII-Darstellung des QR-Codes */', 'namespace' => 'App\\Application\\Service', 'uses' => array ( 'qrcode' => 'App\\Domain\\QrCode\\QrCode', 'qrcodegenerator' => 'App\\Domain\\QrCode\\Service\\QrCodeGenerator', 'errorcorrectionlevel' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'qrcodeconfig' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeConfig', 'qrcodematrix' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeMatrix', 'qrcodeversion' => 'App\\Domain\\QrCode\\ValueObject\\QrCodeVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errorLevel', 'type' => 'App\\Domain\\QrCode\\ValueObject\\ErrorCorrectionLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\CustomerController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listCustomers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft alle Kunden ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/customers\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCustomer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft einen einzelnen Kunden ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/customers/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCustomer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen neuen Kunden */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Shopify\\CustomerRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/customers\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/CustomerRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\CustomerRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'firstName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lastName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'phone', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'verifiedEmail', 'type' => '?bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'addresses', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sendWelcomeEmail', 'type' => '?bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\OrderController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listOrders', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft alle Bestellungen ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/orders\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOrder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft eine einzelne Bestellung ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/orders/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createOrder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine neue Bestellung */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Shopify\\OrderRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/orders\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/OrderRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\OrderRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lineItems', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customer', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'shippingAddress', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'billingAddress', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'financialStatus', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fulfillmentStatus', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'note', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\ProductController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'client', 'type' => 'App\\Infrastructure\\Api\\ShopifyClient', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listProducts', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft alle Produkte aus dem Shopify-Shop ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/products\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProduct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft ein einzelnes Produkt anhand seiner ID ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/products/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createProduct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein neues Produkt */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Shopify\\ProductRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/products\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateProduct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktualisiert ein bestehendes Produkt */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Shopify\\ProductRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/products/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteProduct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht ein Produkt */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/products/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'searchProducts', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sucht nach Produkten */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/products/search\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ProductRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\ProductRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'vendor', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'productType', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'variants', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'images', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\ShopController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getShopInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft Informationen über den Shop ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/shop\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWebhooks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft die Webhooks des Shops ab */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/webhooks\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createWebhook', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen neuen Webhook */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'apiexception' => 'App\\Framework\\Api\\ApiException', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'shopifyclient' => 'App\\Infrastructure\\Api\\ShopifyClient', 'apiconfig' => 'Archive\\Config\\ApiConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Shopify\\WebhookRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/shopify/webhooks\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/ShopifyWebhookHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\ShopifyWebhookHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'externalApiConfig', 'type' => 'App\\Framework\\Config\\External\\ExternalApiConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleWebhook', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet eingehende Shopify-Webhooks * * Hinweis: Shopify überprüft die Authentizität von Webhooks mit dem X-Shopify-Hmac-Sha256 Header */', 'namespace' => 'App\\Application\\Shopify', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'externalapiconfig' => 'App\\Framework\\Config\\External\\ExternalApiConfig', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/webhook/shopify\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Shopify/WebhookRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Shopify\\WebhookRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'topic', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'address', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/System/BootLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\System\\BootLogger', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\DefaultLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'log', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Core\\Events\\ApplicationBooted', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/System/ErrorLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\System\\ErrorLogger', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logger für aufgetretene Fehler */', 'namespace' => 'App\\Application\\System', 'uses' => array ( 'erroroccurred' => 'App\\Framework\\Core\\Events\\ErrorOccurred', 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Core\\Events\\ErrorOccurred', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '10', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/System/UserRegistrationLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\System\\UserRegistrationLogger', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logger für Benutzerregistrierungen */', 'namespace' => 'App\\Application\\System', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'userregistered' => 'App\\Framework\\Core\\Events\\UserRegistered', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logUserRegistration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Protokolliert die Registrierung eines neuen Benutzers */', 'namespace' => 'App\\Application\\System', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'userregistered' => 'App\\Framework\\Core\\Events\\UserRegistered', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Core\\Events\\UserRegistered', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Test/WafTestController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Test\\WafTestController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Test controller for WAF functionality */', 'namespace' => 'App\\Application\\Test', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'request' => 'App\\Framework\\Http\\Request', 'logger' => 'App\\Framework\\Logging\\Logger', 'performanceservice' => 'App\\Framework\\Performance\\PerformanceService', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', 'viewresult' => 'App\\Framework\\Router\\Result\\ViewResult', 'bodyanalyzer' => 'App\\Framework\\Waf\\Analysis\\Analyzers\\BodyAnalyzer', 'headeranalyzer' => 'App\\Framework\\Waf\\Analysis\\Analyzers\\HeaderAnalyzer', 'parameteranalyzer' => 'App\\Framework\\Waf\\Analysis\\Analyzers\\ParameterAnalyzer', 'urlanalyzer' => 'App\\Framework\\Waf\\Analysis\\Analyzers\\UrlAnalyzer', 'clusteringanomalydetector' => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\ClusteringAnomalyDetector', 'statisticalanomalydetector' => 'App\\Framework\\Waf\\MachineLearning\\Detectors\\StatisticalAnomalyDetector', 'frequencyfeatureextractor' => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\FrequencyFeatureExtractor', 'patternfeatureextractor' => 'App\\Framework\\Waf\\MachineLearning\\Extractors\\PatternFeatureExtractor', 'machinelearningengine' => 'App\\Framework\\Waf\\MachineLearning\\MachineLearningEngine', 'ruleengine' => 'App\\Framework\\Waf\\Rules\\RuleEngine', 'threatassessmentservice' => 'App\\Framework\\Waf\\ThreatAssessmentService', 'wafconfig' => 'App\\Framework\\Waf\\WafConfig', 'wafengine' => 'App\\Framework\\Waf\\WafEngine', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performance', 'type' => 'App\\Framework\\Performance\\PerformanceService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showTestPage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/test/waf\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeRequest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/test/waf/analyze\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserData.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\User\\UserData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * User Data Value Object * Framework-konformes Value Object statt primitive Arrays */', 'namespace' => 'App\\Application\\User', 'uses' => array ( 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'active', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für GraphQL/API Kompatibilität * @return array */', 'namespace' => 'App\\Application\\User', 'uses' => array ( 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory Method für Array-Input (Migration von primitives) * @param array $data */', 'namespace' => 'App\\Application\\User', 'uses' => array ( 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isActive', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDisplayName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaskedEmail', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/User/UserService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\User\\UserService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * User Service mit framework-konformen Value Objects * Ersetzt primitive Arrays durch typisierte Value Objects */', 'namespace' => 'App\\Application\\User', 'uses' => array ( 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\User', 'uses' => array ( 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findById', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Application\\User\\UserData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByEmail', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Application\\User\\UserData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\User\\UserData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'update', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Application\\User\\UserData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => '?App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deactivate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Application\\User\\UserData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Application\\User', 'uses' => array ( 'emailaddress' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Webhook/Controller/LegalWebhookController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Webhook\\Controller\\LegalWebhookController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example webhook controller for legal content updates (Impressum/Privacy) * Demonstrates both incoming webhook processing and event handling */', 'namespace' => 'App\\Application\\Webhook\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'onevent' => 'App\\Framework\\EventBus\\Attributes\\OnEvent', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'webhookendpoint' => 'App\\Framework\\Webhook\\Attributes\\WebhookEndpoint', 'webhookreceived' => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 'webhookservice' => 'App\\Framework\\Webhook\\WebhookService', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'webhookService', 'type' => 'App\\Framework\\Webhook\\WebhookService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'receiveLegalUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Receive legal content updates via webhook */', 'namespace' => 'App\\Application\\Webhook\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'onevent' => 'App\\Framework\\EventBus\\Attributes\\OnEvent', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'webhookendpoint' => 'App\\Framework\\Webhook\\Attributes\\WebhookEndpoint', 'webhookreceived' => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 'webhookservice' => 'App\\Framework\\Webhook\\WebhookService', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/webhooks/legal\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Webhook\\Attributes\\WebhookEndpoint', 'args' => array ( 'provider' => '\'legal-service\'', 'events' => '[\'legal.content.updated\', \'legal.content.created\']', 'async' => 'true', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleLegalContentUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle legal content webhook events */', 'namespace' => 'App\\Application\\Webhook\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'onevent' => 'App\\Framework\\EventBus\\Attributes\\OnEvent', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'webhookendpoint' => 'App\\Framework\\Webhook\\Attributes\\WebhookEndpoint', 'webhookreceived' => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 'webhookservice' => 'App\\Framework\\Webhook\\WebhookService', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\EventBus\\Attributes\\OnEvent', 'args' => array ( ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'notifyLegalUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Send legal content update to external service */', 'namespace' => 'App\\Application\\Webhook\\Controller', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'onevent' => 'App\\Framework\\EventBus\\Attributes\\OnEvent', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'method' => 'App\\Framework\\Http\\Method', 'jsonresponse' => 'App\\Framework\\Http\\Responses\\JsonResponse', 'webhookendpoint' => 'App\\Framework\\Webhook\\Attributes\\WebhookEndpoint', 'webhookreceived' => 'App\\Framework\\Webhook\\Events\\WebhookReceived', 'webhookservice' => 'App\\Framework\\Webhook\\WebhookService', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/api/admin/legal/notify\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQuery.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\DemoQuery', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\DemoQueryHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Application\\Website\\DemoQueryReturn', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'App\\Application\\Website\\DemoQuery', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\QueryBus\\QueryHandler', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/DemoQueryReturn.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\DemoQueryReturn', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'test', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/HomeRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\HomeRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\ControllerRequest', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'test', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/HomeViewModel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\HomeViewModel', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\ViewModel', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\View\\Template', 'args' => array ( 0 => '\'test\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowHome.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\ShowHome', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryBus', 'type' => 'App\\Framework\\QueryBus\\QueryBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTimeFormatter', 'type' => 'App\\Framework\\DateTime\\DateTimeFormatter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'urlGenerator', 'type' => 'App\\Framework\\Router\\UrlGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageRepository', 'type' => 'App\\Domain\\Media\\ImageRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'home', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Application\\Website\\HomeRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'test', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/\'', 'name' => '\'home\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'epk', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'test', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/epk\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'designSystem', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/designsystem\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowImpressum.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\ShowImpressum', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'impressum', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\StaticPage', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/impressum\'', 'name' => '\'impressum\'', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'datenschutz', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/datenschutz\'', 'name' => '\'datenschutz\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowSitemap.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\ShowSitemap', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sitemapGenerator', 'type' => 'App\\Framework\\Sitemap\\SitemapGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\HttpResponse', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/sitemap.xml\'', 'name' => '\'sitemap\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sitemap', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\ViewResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/sitemap\'', 'name' => '\'sitemap_readable\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Application/Website/ShowVcard.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Application\\Website\\ShowVcard', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/kontakt.vcf\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiModel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Domain\\AI\\AiModel', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GPT_35_TURBO', 'value' => '\'gpt-3.5-turbo\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GPT_4', 'value' => '\'gpt-4\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GPT_4_TURBO', 'value' => '\'gpt-4-turbo\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GPT_4O', 'value' => '\'gpt-4o\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GPT_4O_MINI', 'value' => '\'gpt-4o-mini\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LLAMA2_7B', 'value' => '\'llama2-7b\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MISTRAL_7B', 'value' => '\'mistral-7b-instruct\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CODE_LLAMA_7B', 'value' => '\'codellama-7b-instruct\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ORCA_MINI_3B', 'value' => '\'orca-mini-3b\'', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'VICUNA_7B', 'value' => '\'vicuna-7b\'', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA2', 'value' => '\'llama2\'', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA2_13B', 'value' => '\'llama2:13b\'', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA2_70B', 'value' => '\'llama2:70b\'', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_MISTRAL', 'value' => '\'mistral\'', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_MISTRAL_7B', 'value' => '\'mistral:7b\'', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_CODELLAMA', 'value' => '\'codellama\'', 'phpDoc' => NULL, )), 16 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_CODELLAMA_13B', 'value' => '\'codellama:13b\'', 'phpDoc' => NULL, )), 17 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_GEMMA', 'value' => '\'gemma\'', 'phpDoc' => NULL, )), 18 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_GEMMA_7B', 'value' => '\'gemma:7b\'', 'phpDoc' => NULL, )), 19 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_NEURAL_CHAT', 'value' => '\'neural-chat\'', 'phpDoc' => NULL, )), 20 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_STARLING', 'value' => '\'starling-lm\'', 'phpDoc' => NULL, )), 21 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_ORCA_MINI', 'value' => '\'orca-mini\'', 'phpDoc' => NULL, )), 22 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_VICUNA', 'value' => '\'vicuna\'', 'phpDoc' => NULL, )), 23 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA3', 'value' => '\'llama3\'', 'phpDoc' => NULL, )), 24 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA3_8B', 'value' => '\'llama3:8b\'', 'phpDoc' => NULL, )), 25 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA3_70B', 'value' => '\'llama3:70b\'', 'phpDoc' => NULL, )), 26 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_PHI3', 'value' => '\'phi3\'', 'phpDoc' => NULL, )), 27 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_QWEN', 'value' => '\'qwen\'', 'phpDoc' => NULL, )), 28 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_QWEN2_5', 'value' => '\'qwen2.5:7b\'', 'phpDoc' => NULL, )), 29 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_QWEN2_5_CODER', 'value' => '\'qwen2.5-coder:7b\'', 'phpDoc' => NULL, )), 30 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA3_1', 'value' => '\'llama3.1:8b\'', 'phpDoc' => NULL, )), 31 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_LLAMA3_2_3B', 'value' => '\'llama3.2:3b\'', 'phpDoc' => NULL, )), 32 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA_DEEPSEEK_CODER', 'value' => '\'deepseek-coder:6.7b\'', 'phpDoc' => NULL, )), 33 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProvider', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\AI\\AiProvider', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiProvider.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Domain\\AI\\AiProvider', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OPENAI', 'value' => '\'openai\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GPT4ALL', 'value' => '\'gpt4all\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OLLAMA', 'value' => '\'ollama\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQuery.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\AI\\AiQuery', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'model', 'type' => 'App\\Domain\\AI\\AiModel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'messages', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'temperature', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxTokens', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiQueryHandlerInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Domain\\AI\\AiQueryHandlerInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\AI\\AiResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'App\\Domain\\AI\\AiQuery', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/AiResponse.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\AI\\AiResponse', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'provider', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'model', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokensUsed', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/Exception/AiProviderUnavailableException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\AI\\Exception\\AiProviderUnavailableException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'provider', 'type' => 'App\\Domain\\AI\\AiProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/AI/Role.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Domain\\AI\\Role', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SYSTEM', 'value' => '\'system\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'USER', 'value' => '\'user\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ASSISTANT', 'value' => '\'assistant\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/Email.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Common\\ValueObject\\Email', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string $value Email-Adresse */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/PhoneNumber.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Common\\ValueObject\\PhoneNumber', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string $value Phone number in various formats */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from string value */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parse from various formats */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate if string is a valid phone number */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the normalized phone number value */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCountryCode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get country code if present */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNationalNumber', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get national number (without country code) */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMobile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if it\'s a mobile number (basic heuristic) */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toE164', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Format as E.164 international format */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toInternational', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Format as international display format */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toNational', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Format as national display format */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check equality with another phone number */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameCountry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if from same country */', 'namespace' => 'App\\Domain\\Common\\ValueObject', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Common/ValueObject/RGBColor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Common\\ValueObject\\RGBColor', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHex', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hex', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromRgb', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'red', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'green', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blue', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toHex', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toRgb', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactMessage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Contact\\ContactMessage', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 'tableName' => '\'contacts\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/ContactRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Contact\\ContactRepository', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'contact', 'type' => 'App\\Domain\\Contact\\ContactMessage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Contact/Migrations/CreateContactTable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Contact\\Migrations\\CreateContactTable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/GdImageProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\GdImageProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * GD-basierter Bildprozessor als Fallback */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Domain\\Media\\ImageProcessorInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createAllVariants', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createVariantsForType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Domain\\Media\\ImageVariantType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Image.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Image', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'variants', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @var ImageVariant[] $variants */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'column' => 'App\\Framework\\Database\\Attributes\\Column', 'entity' => 'App\\Framework\\Database\\Attributes\\Entity', 'type' => 'App\\Framework\\Database\\Attributes\\Type', ), 'constUses' => array ( ), )), 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Type', 'args' => array ( 0 => '\\App\\Domain\\Media\\ImageVariant::class', 'foreignKey' => '\'image_id\'', 'localKey' => '\'ulid\'', ), )), ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'ulid\'', 'primary' => 'true', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'filename\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'originalFilename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'original_filename\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mimeType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'mime_type\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'file_size\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'width', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'width\'', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'height', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'height\'', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'hash\'', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'path\'', ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'altText', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'alt_text\'', ), )), ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 'tableName' => '\'images\'', 'idColumn' => '\'ulid\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageFormat.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageFormat', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'AVIF', 'value' => '\'avif\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WEBP', 'value' => '\'webp\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'JPEG', 'value' => '\'jpeg\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMimeType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQuality', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageGallery.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageGallery', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 'tableName' => '\'image_galleries\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Adapter-Klasse für Abwärtskompatibilität * Delegiert an die konkrete Implementierung */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Domain\\Media\\ImageProcessorInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konstruktor mit automatischer Dependency-Injection */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processor', 'type' => '?App\\Domain\\Media\\ImageProcessorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createAllVariants', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createVariantsForType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Domain\\Media\\ImageVariantType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageProcessorFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory-Klasse zum Erstellen des richtigen ImageProcessor */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt den optimalen ImageProcessor je nach verfügbaren Extensions * * @return ImageProcessorInterface Die beste verfügbare Implementation */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Domain\\Media\\ImageProcessorInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageProcessorInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageProcessorInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createAllVariants', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt alle konfigurierten Bildvarianten für ein Bild * * @param Image $image * @return array */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createVariantsForType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt alle Bildvarianten für einen bestimmten Typ * * @param Image $image * @param ImageVariantType $type * @return array */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Domain\\Media\\ImageVariantType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageRepository', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tempPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findBySlotName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\Image', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findById', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Media\\Image', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByFilename', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Media\\Image', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByHash', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Media\\Image', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return Image[] */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'search', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'search', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByUlid', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Media\\Image', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateAltText', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'altText', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateFilename', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ulid', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'search', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return Image[] */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minWidth', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minHeight', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageResizer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageResizer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageVariant', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxWidth', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxHeight', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'quality', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSize.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageSize', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SMALL', 'value' => '\'small\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LARGE', 'value' => '\'large\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'XLARGE', 'value' => '\'xlarge\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWidth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Domain\\Media\\ImageVariantType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBreakpoint', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlot.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageSlot', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'image', ), 'phpDoc' => NULL, 'type' => '?App\\Domain\\Media\\Image', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'id\'', 'primary' => 'true', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'slot_name\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'image_id\'', ), )), ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 'tableName' => '\'image_slots\'', 'idColumn' => '\'id\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageSlotRepository', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlots', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findBySlotName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageSlot', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findById', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageSlot', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageSlot', 'type' => 'App\\Domain\\Media\\ImageSlot', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAllWithImages', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByIdWithImage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageSlotView', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateImageId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSlotView.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageSlotView', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slotName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => '?App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromSlot', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slot', 'type' => 'App\\Domain\\Media\\ImageSlot', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => '?App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageSourceSetGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageSourceSetGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erzeugt HTML-Source-Sets für responsive Bilder */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generatePictureElement', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert ein vollständiges Picture-Element mit Source-Tags für verschiedene Formate und Größen * * @param Image $image Das Originalbild mit seinen Varianten * @param string $variantType Der Variantentyp (thumbnail, gallery, hero) * @param array $attributes Zusätzliche Attribute für das img-Tag (alt, class, etc.) * @return string HTML Picture-Element */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'variantType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariant.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageVariant', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'image_id\'', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'variantType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'variant_type\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'size', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'size\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'format\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mimeType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'mime_type\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'file_size\'', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'width', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'width\'', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'height', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'height\'', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'filename\'', ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'path\'', ), )), ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'id\'', 'primary' => 'true', 'autoIncrement' => 'true', ), )), ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUrl', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVariantType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageVariantType', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageSize', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFormat', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Media\\ImageFormat', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVariantKey', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 'tableName' => '\'image_variants\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageVariantConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllVariants', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVariantsForType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Domain\\Media\\ImageVariantType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageVariantRepository', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'imageVariant', 'type' => 'App\\Domain\\Media\\ImageVariant', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByFilename', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Media\\ImageVariant', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImageVariantType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImageVariantType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'THUMBNAIL', 'value' => '\'thumbnail\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GALLERY', 'value' => '\'gallery\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HERO', 'value' => '\'hero\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSizes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/ImagickImageProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\ImagickImageProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * ImageMagick-basierter Bildprozessor für optimale Bildqualität */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'imagick' => 'Imagick', 'imagickexception' => 'ImagickException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Domain\\Media\\ImageProcessorInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createAllVariants', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'imagick' => 'Imagick', 'imagickexception' => 'ImagickException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createVariantsForType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Domain\\Media', 'uses' => array ( 'imagick' => 'Imagick', 'imagickexception' => 'ImagickException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Domain\\Media\\ImageVariantType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/AddSizeToImageVariantsTable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Migrations\\AddSizeToImageVariantsTable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageSlotsTable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Migrations\\CreateImageSlotsTable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImageVariantsTable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Migrations\\CreateImageVariantsTable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Migrations\\CreateImagesTable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/CreateImagesTableWithSchema.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Migrations\\CreateImagesTableWithSchema', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/Migrations/UpdateImageVariantsConstraint.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\Migrations\\UpdateImageVariantsConstraint', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Media/SaveImageFile.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Media\\SaveImageFile', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'image', 'type' => 'App\\Domain\\Media\\Image', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tempFileName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Entity/MetaEntry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routePattern', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metaData', 'type' => '?App\\Domain\\Meta\\ValueObject\\MetaData', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'active', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'createdAt', 'type' => '?DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'updatedAt', 'type' => '?DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forRoute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routePattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metaData', 'type' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metaData', 'type' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateMetaData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metaData', 'type' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'activate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deactivate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRouteEntry', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityEntry', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesRoute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Controller/MetaAdminController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Http\\Controller\\MetaAdminController', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'repository', 'type' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metaManager', 'type' => 'App\\Domain\\Meta\\Service\\MetaManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'templateResolver', 'type' => '?App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Listet alle Meta-Einträge auf */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt einen einzelnen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::GET', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen neuen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktualisiert einen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::PUT', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht einen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta/{id}\'', 'method' => '\\App\\Framework\\Http\\Method::DELETE', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toggleMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktiviert/Deaktiviert einen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta/{id}/toggle\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateTemplate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validiert Template-Syntax */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta/validate-template\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache für Meta-Daten leeren */', 'namespace' => 'App\\Domain\\Meta\\Http\\Controller', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'metarequest' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metamanager' => 'App\\Domain\\Meta\\Service\\MetaManager', 'metatemplateresolver' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'route' => 'App\\Framework\\Attributes\\Route', 'method' => 'App\\Framework\\Http\\Method', 'status' => 'App\\Framework\\Http\\Status', 'jsonresult' => 'App\\Framework\\Router\\Result\\JsonResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\Result\\JsonResult', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 'path' => '\'/admin/meta/clear-cache\'', 'method' => '\\App\\Framework\\Http\\Method::POST', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Middleware/MetaMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Http\\Middleware\\MetaMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metaManager', 'type' => 'App\\Domain\\Meta\\Service\\MetaManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'renderContext', 'type' => '?App\\Framework\\View\\RenderContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Http/Request/MetaRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Http\\Request\\MetaRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'routePattern', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '255', ), )), ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'entityType', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '100', ), )), ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'entityId', ), 'phpDoc' => NULL, 'type' => '?int', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\Min', 'args' => array ( 0 => '1', ), )), ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'title', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\Required', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '255', ), )), ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'description', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '500', ), )), ), 'hooks' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'keywords', ), 'phpDoc' => NULL, 'type' => '?array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'ogTitle', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '255', ), )), ), 'hooks' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'ogDescription', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '500', ), )), ), 'hooks' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'ogImage', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\Url', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '500', ), )), ), 'hooks' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'ogType', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '50', ), )), ), 'hooks' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'twitterCard', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '50', ), )), ), 'hooks' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'twitterSite', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '100', ), )), ), 'hooks' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'canonical', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\Url', 'args' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\MaxLength', 'args' => array ( 0 => '500', ), )), ), 'hooks' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'customMeta', ), 'phpDoc' => NULL, 'type' => '?array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'priority', ), 'phpDoc' => NULL, 'type' => 'int', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\Min', 'args' => array ( 0 => '0', ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Validation\\Attributes\\Max', 'args' => array ( 0 => '999', ), )), ), 'hooks' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'active', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeywordsAsArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Interface/MetaAware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Interface\\MetaAware', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für Domain-Objekte, die ihre eigenen Meta-Daten bereitstellen können */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetaTitle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Meta-Titel zurück */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetaDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Meta-Beschreibung zurück */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetaKeywords', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Meta-Keywords zurück */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOgImage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das Open Graph Bild zurück */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOgType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Open Graph Typ zurück (optional) */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCanonicalUrl', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die kanonische URL zurück (optional) */', 'namespace' => 'App\\Domain\\Meta\\Interface', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/DatabaseMetaRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Repository\\DatabaseMetaRepository', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pdo', 'type' => 'PDO', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByRoute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAllByRoute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findById', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'search', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'routePatternExists', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routePattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludeId', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityMetaExists', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludeId', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Repository/MetaRepositoryInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByRoute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Meta-Daten für eine Route */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Meta-Daten für eine Entity */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAllByRoute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle aktiven Meta-Einträge für eine Route (sortiert nach Priorität) */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert einen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Domain\\Meta\\Entity\\MetaEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht einen Meta-Eintrag */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findById', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet einen Meta-Eintrag anhand der ID */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Meta\\Entity\\MetaEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Meta-Einträge (mit Paginierung) */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'search', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sucht Meta-Einträge nach Pattern */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zählt alle Meta-Einträge */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'routePatternExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Route-Pattern bereits existiert */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routePattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludeId', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityMetaExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob eine Entity bereits Meta-Daten hat */', 'namespace' => 'App\\Domain\\Meta\\Repository', 'uses' => array ( 'metaentry' => 'App\\Domain\\Meta\\Entity\\MetaEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludeId', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Service\\MetaManager', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'repository', 'type' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => '?App\\Framework\\Cache\\CacheInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'templateResolver', 'type' => '?App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolveForRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löst Meta-Daten für einen Request auf */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'cacheinterface' => 'App\\Framework\\Cache\\CacheInterface', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolveForRoute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löst Meta-Daten für eine spezifische Route auf */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'cacheinterface' => 'App\\Framework\\Cache\\CacheInterface', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolveForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löst Meta-Daten für eine Entity auf */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'cacheinterface' => 'App\\Framework\\Cache\\CacheInterface', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidateCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidiert den Cache für eine Route */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'cacheinterface' => 'App\\Framework\\Cache\\CacheInterface', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'route', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidateAllCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidiert den gesamten Meta-Cache */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'cacheinterface' => 'App\\Framework\\Cache\\CacheInterface', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createDefaultMeta', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Standard-Meta-Daten basierend auf dem Request */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metarepositoryinterface' => 'App\\Domain\\Meta\\Repository\\MetaRepositoryInterface', 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'cacheinterface' => 'App\\Framework\\Cache\\CacheInterface', 'request' => 'App\\Framework\\Http\\Request', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/Service/MetaTemplateResolver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\Service\\MetaTemplateResolver', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolve', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löst Templates in Meta-Daten auf */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'meta', 'type' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateTemplate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validiert Template-Syntax */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'template', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractPlaceholders', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert alle Platzhalter aus einem Template */', 'namespace' => 'App\\Domain\\Meta\\Service', 'uses' => array ( 'metadata' => 'App\\Domain\\Meta\\ValueObject\\MetaData', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'template', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/Meta/ValueObject/MetaData.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keywords', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ogTitle', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ogDescription', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ogImage', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ogType', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'twitterCard', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'twitterSite', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'canonical', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customMeta', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Domain\\Meta\\ValueObject\\MetaData', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'render', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/User/Migrations/CreateUsersTable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\User\\Migrations\\CreateUsersTable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/User/User.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\User\\User', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'id\'', 'primary' => 'true', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'name\'', ), )), ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 'tableName' => '\'users\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Domain/ValueObjects/EmailAddress.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Domain\\ValueObjects\\EmailAddress', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDomain', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLocalPart', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCategory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kategorien für Analytics-Daten */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'USER_BEHAVIOR', 'value' => '\'user_behavior\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PAGE_VIEWS', 'value' => '\'page_views\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'API_USAGE', 'value' => '\'api_usage\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ERRORS', 'value' => '\'errors\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PERFORMANCE', 'value' => '\'performance\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BUSINESS', 'value' => '\'business\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SECURITY', 'value' => '\'security\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONVERSION', 'value' => '\'conversion\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsCollector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Moderner Analytics-Collector basierend auf dem Performance-System * * Sammelt Business- und User-Analytics-Daten und nutzt das bewährte * Performance-Framework für effiziente Datensammlung. */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'random', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serverEnvironment', 'type' => 'App\\Framework\\Http\\ServerEnvironment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'samplingRate', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Trackt eine Benutzeraktion */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackPageView', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Trackt eine Seitenansicht */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Trackt einen Fehler */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errorType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackBusinessEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Trackt ein Business-Event (Conversion, Purchase, etc.) */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currency', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackApiCall', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Trackt API-Nutzung */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endpoint', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'method', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseCode', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setSessionData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt Session-Daten */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSessionData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt Session-Daten */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erhöht einen Counter */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'amount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt Counter-Wert */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCounters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt alle Counter */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\AnalyticsConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analytics-Konfiguration */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'samplingRate', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityAnalyticsEnabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bufferSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retentionDays', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trackPageViews', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trackApiCalls', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trackUserActions', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trackErrors', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trackPerformance', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sensitiveKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromEnvironment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/AnalyticsInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\AnalyticsInitializer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analytics-System Initializer * * Registriert alle Analytics-Komponenten im DI-Container */', 'namespace' => 'App\\Framework\\Analytics', 'uses' => array ( 'securityeventbridge' => 'App\\Framework\\Analytics\\Bridges\\SecurityEventBridge', 'securityanalyticslistener' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'analyticsstorage' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'performancebasedanalyticsstorage' => 'App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage', 'container' => 'App\\Framework\\DI\\Container', 'initializer' => 'App\\Framework\\DI\\Initializer', 'atomicstorage' => 'App\\Framework\\Filesystem\\AtomicStorage', 'serializer' => 'App\\Framework\\Filesystem\\Serializer', 'jsonserializer' => 'App\\Framework\\Filesystem\\Serializers\\JsonSerializer', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'securerandomgenerator' => 'App\\Framework\\Random\\SecureRandomGenerator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initializeAnalytics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Bridges/SecurityEventBridge.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Bridges\\SecurityEventBridge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bridge zwischen Security-System und Analytics * * Einfache Bridge die Security-Events an Analytics weiterleitet * ohne die ursprünglichen Systeme zu verändern */', 'namespace' => 'App\\Framework\\Analytics\\Bridges', 'uses' => array ( 'securityanalyticslistener' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'securityeventinterface' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyticsListener', 'type' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleSecurityEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet Security-Event und leitet es an Analytics weiter */', 'namespace' => 'App\\Framework\\Analytics\\Bridges', 'uses' => array ( 'securityanalyticslistener' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'securityeventinterface' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory-Methode für einfache Erstellung */', 'namespace' => 'App\\Framework\\Analytics\\Bridges', 'uses' => array ( 'securityanalyticslistener' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'securityeventinterface' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'listener', 'type' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/BusinessEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Events\\BusinessEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event für Business-Ereignisse (Conversions, Purchases, etc.) */', 'namespace' => 'App\\Framework\\Analytics\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currency', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/PageView.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Events\\PageView', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event für Seitenaufrufe */', 'namespace' => 'App\\Framework\\Analytics\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'referer', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/SecurityEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Events\\SecurityEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analytics-Event für Sicherheitsvorfälle * * Entkoppelt Analytics von Security-System über Events */', 'namespace' => 'App\\Framework\\Analytics\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'severity', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Events/UserAction.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Events\\UserAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event für Benutzeraktionen */', 'namespace' => 'App\\Framework\\Analytics\\Events', 'uses' => array ( 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Listeners/SecurityAnalyticsListener.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Listeners\\SecurityAnalyticsListener', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Security-Analytics Listener * * Hört auf Security-Events und konvertiert sie zu Analytics-Daten * ohne direkte Kopplung zwischen Security und Analytics */', 'namespace' => 'App\\Framework\\Analytics\\Listeners', 'uses' => array ( 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticscollector' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'securityevent' => 'App\\Framework\\Analytics\\Events\\SecurityEvent', 'securityeventinterface' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyticsCollector', 'type' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleSecurityEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Behandelt Security-Events und konvertiert sie zu Analytics */', 'namespace' => 'App\\Framework\\Analytics\\Listeners', 'uses' => array ( 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticscollector' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'securityevent' => 'App\\Framework\\Analytics\\Events\\SecurityEvent', 'securityeventinterface' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityEvent', 'type' => 'App\\Framework\\Exception\\SecurityEvent\\SecurityEventInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Middleware/AnalyticsMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Middleware\\AnalyticsMiddleware', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Neue Analytics-Middleware basierend auf dem Performance-Framework * * Sammelt automatisch Analytics-Daten für HTTP-Requests und integriert * sich nahtlos in das Performance-Monitoring-System. */', 'namespace' => 'App\\Framework\\Analytics\\Middleware', 'uses' => array ( 'analyticscategory' => 'App\\Framework\\Analytics\\AnalyticsCategory', 'analyticscollector' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'analyticsconfig' => 'App\\Framework\\Analytics\\AnalyticsConfig', 'pageview' => 'App\\Framework\\Analytics\\Events\\PageView', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headerkey' => 'App\\Framework\\Http\\HeaderKey', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'middlewarecontext' => 'App\\Framework\\Http\\MiddlewareContext', 'middlewarepriority' => 'App\\Framework\\Http\\MiddlewarePriority', 'middlewarepriorityattribute' => 'App\\Framework\\Http\\MiddlewarePriorityAttribute', 'next' => 'App\\Framework\\Http\\Next', 'request' => 'App\\Framework\\Http\\Request', 'requeststatemanager' => 'App\\Framework\\Http\\RequestStateManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\HttpMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyticsCollector', 'type' => 'App\\Framework\\Analytics\\AnalyticsCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Analytics\\AnalyticsConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\MiddlewareContext', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Http\\MiddlewareContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'App\\Framework\\Http\\Next', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stateManager', 'type' => 'App\\Framework\\Http\\RequestStateManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Http\\MiddlewarePriorityAttribute', 'args' => array ( 0 => '\\App\\Framework\\Http\\MiddlewarePriority::BUSINESS_LOGIC', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/AnalyticsStorage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für Analytics-Datenspeicherung */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'storeAggregated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert aggregierte Analytics-Daten */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'period', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'storeRawData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert Rohdaten (mit Sampling) */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'samplingRate', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAggregated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft aggregierte Daten ab */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'period', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopList', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft Top-Listen ab (z.B. meistbesuchte Seiten) */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metric', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeSeries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ruft Zeitreihen-Daten ab */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metric', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bereinigt alte Daten */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retentionDays', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Analytics/Storage/PerformanceBasedAnalyticsStorage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Analytics\\Storage\\PerformanceBasedAnalyticsStorage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analytics-Storage basierend auf dem Performance-System * * Nutzt das Performance-Framework für effiziente Datenspeicherung * und -aggregation von Analytics-Daten. */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( 'atomicstorage' => 'App\\Framework\\Filesystem\\AtomicStorage', 'filepermissionexception' => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', 'serializer' => 'App\\Framework\\Filesystem\\Serializer', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Analytics\\Storage\\AnalyticsStorage', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Filesystem\\Storage|App\\Framework\\Filesystem\\AtomicStorage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializer', 'type' => 'App\\Framework\\Filesystem\\Serializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'storeAggregated', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'period', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'storeRawData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'samplingRate', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAggregated', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'period', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopList', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metric', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeSeries', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metric', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanup', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retentionDays', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__destruct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Destructor um Buffer zu leeren */', 'namespace' => 'App\\Framework\\Analytics\\Storage', 'uses' => array ( 'atomicstorage' => 'App\\Framework\\Filesystem\\AtomicStorage', 'filepermissionexception' => 'App\\Framework\\Filesystem\\Exceptions\\FilePermissionException', 'serializer' => 'App\\Framework\\Filesystem\\Serializer', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Api\\ApiException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'response', 'type' => 'App\\Framework\\HttpClient\\ClientResponse', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getResponse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getResponseData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Api/ApiRequestTrait.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedTraitNode::__set_state(array( 'name' => 'App\\Framework\\Api\\ApiRequestTrait', 'phpDoc' => NULL, 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sendRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet eine Anfrage an die API */', 'namespace' => 'App\\Framework\\Api', 'uses' => array ( 'method' => 'App\\Framework\\Http\\Method', 'clientoptions' => 'App\\Framework\\HttpClient\\ClientOptions', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'method', 'type' => 'App\\Framework\\Http\\Method', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endpoint', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => '?App\\Framework\\HttpClient\\ClientOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decodeJson', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dekodiert den Response-Body als JSON */', 'namespace' => 'App\\Framework\\Api', 'uses' => array ( 'method' => 'App\\Framework\\Http\\Method', 'clientoptions' => 'App\\Framework\\HttpClient\\ClientOptions', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => false, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'response', 'type' => 'App\\Framework\\HttpClient\\ClientResponse', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncBarrier.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncBarrier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Barrier für Synchronisation mehrerer Fibers an einem Punkt */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parties', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'barrierAction', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'await', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet bis alle Parties die Barrier erreichen */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'breakBarrier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bricht die Barrier (alle wartenden Fibers bekommen Exception) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBroken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Barrier gebrochen ist */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNumberWaiting', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Anzahl wartender Parties zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParties', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Anzahl benötigter Parties zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Barrier-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncChannel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncChannel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Channel für Kommunikation zwischen Fibers */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bufferSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'send', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet einen Wert über den Channel */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'receive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Empfängt einen Wert vom Channel */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tryReceive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Versucht zu empfangen (non-blocking) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'close', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schließt den Channel */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Channel-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncEventLoop.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncEventLoop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event Loop für kontinuierliche asynchrone Verarbeitung */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'run', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet den Event Loop */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Event Loop */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'schedule', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine wiederkehrende Aufgabe * @deprecated Use scheduleDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'intervalSeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scheduleDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule a recurring task using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unschedule', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entfernt eine geplante Aufgabe */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine einmalige Aufgabe nach Verzögerung * @deprecated Use setTimeoutDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delaySeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTimeoutDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule a one-time task after a delay using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delay', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'nextTick', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Aufgabe sofort asynchron aus */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Event Loop Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncMutex.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncMutex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mutex für Thread-sichere Operationen zwischen Fibers */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'acquire', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erwirbt das Lock (blockierend) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tryAcquire', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Versucht das Lock zu erwerben (non-blocking) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'release', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das Lock frei */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'synchronized', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion mit automatischem Lock aus */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLocked', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob das Lock gehalten wird */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Mutex-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncOperationFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncOperationFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für häufig verwendete asynchrone Operationen */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'readFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine asynchrone Dateileseoperation */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine asynchrone Dateischreiboperation */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine asynchrone Verzeichnisleseoperation */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'httpRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine asynchrone HTTP-Request-Operation (Platzhalter) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'databaseQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine asynchrone Datenbank-Query-Operation (Platzhalter) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sleep', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine asynchrone Sleep-Operation * @deprecated Use sleepDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sleepDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create async sleep operation using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'measureExecution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Measure execution time of an operation */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create operation with timeout */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPool.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncPool', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Pool für begrenzte parallele Fiber-Ausführung */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConcurrency', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt eine Operation zum Pool hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt alle Operationen mit begrenzter Parallelität aus */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'await', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet auf ein spezifisches Ergebnis */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt aktuelle Pool-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncPromise.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncPromise', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Promise für async/await-ähnliche Programmierung */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolve', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein resolved Promise */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein rejected Promise */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Promise aus Callable */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executor', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'all', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet auf alle Promises */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'promises', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'race', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet auf das erste erfolgreiche Promise */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'promises', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'then', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Then-Handler hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'onFulfilled', 'type' => '?callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'onRejected', 'type' => '?callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'catch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Catch-Handler hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'onRejected', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'finally', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Finally-Handler hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'await', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet synchron auf das Ergebnis */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isResolved', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Promise resolved ist */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Promise-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncQueue.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncQueue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Asynchrone Queue für Producer-Consumer Pattern */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'enqueue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt ein Element zur Queue hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'item', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dequeue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Nimmt ein Element aus der Queue (blockierend) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tryDequeue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Versucht ein Element zu nehmen (non-blocking) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'close', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schließt die Queue */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Queue leer ist */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'size', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt aktuelle Queue-Größe zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Queue-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncScheduler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncScheduler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Scheduler für zeitbasierte asynchrone Aufgaben */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'daily', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine täglich wiederkehrende Aufgabe */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'time', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hourly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine stündlich wiederkehrende Aufgabe */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minute', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'everyMinute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine minütlich wiederkehrende Aufgabe */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'every', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine Aufgabe mit Intervall in Sekunden */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'at', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plant eine einmalige Aufgabe zu bestimmter Zeit */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'task', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'when', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'start', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet den Scheduler */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Scheduler */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unschedule', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entfernt einen Job */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Scheduler-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'datetime' => 'DateTime', 'datetimeinterface' => 'DateTimeInterface', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncSemaphore.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncSemaphore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Semaphore für begrenzte Ressourcen-Zugriffe */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'acquire', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erwirbt eine Semaphore-Erlaubnis (blockierend) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tryAcquire', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Versucht eine Erlaubnis zu erwerben (non-blocking) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'release', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine Erlaubnis zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withPermit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion mit automatischer Erlaubnis aus */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'availablePermits', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt verfügbare Erlaubnisse zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Semaphore-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'splqueue' => 'SplQueue', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service für asynchrone Operationen mit Composition-Pattern */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncTimer', 'type' => 'App\\Framework\\Async\\AsyncTimer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'async', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Run operation asynchronously */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'promise', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Run operation asynchronously with promise */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parallel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Run multiple operations in parallel */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Run operation with timeout */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delay', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Delay execution */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'measure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Measure execution time */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'waitFor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wait for condition */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'checkInterval', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'schedule', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule callback after delay */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delay', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'repeat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule recurring callback */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cancel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cancel scheduled operation */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch operations with concurrency control */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConcurrency', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get async statistics */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncServiceInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncServiceInitializer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Initializer für AsyncService */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'initializer' => 'App\\Framework\\DI\\Initializer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncService', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncStream.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncStream', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stream für kontinuierliche asynchrone Datenverarbeitung */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen Stream aus einem Generator */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'generator', 'type' => 'Generator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen Stream aus einem Array */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'interval', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen Interval-Stream */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'intervalSeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'pipe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Processor zum Stream hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processor', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filtert Stream-Elemente */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicate', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Transformiert Stream-Elemente */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'transformer', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'take', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Nimmt nur die ersten N Elemente */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'skip', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Überspringt die ersten N Elemente */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'collect', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sammelt alle Stream-Elemente in einem Array */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reduce', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reduziert den Stream zu einem einzelnen Wert */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reducer', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'initial', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'subscribe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Abonniert den Stream */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subscriber', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'close', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schließt den Stream */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isClosed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Stream geschlossen ist */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Stream-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimeoutException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncTimeoutException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exception für Timeout bei asynchronen Operationen */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/AsyncTimer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\AsyncTimer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Timer-System für asynchrone zeitbasierte Operationen mit Value Objects */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion nach einer Verzögerung aus * @deprecated Use setTimeoutDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delaySeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTimeoutDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule a callback after a delay using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delay', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setInterval', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion wiederholt in Intervallen aus * @deprecated Use setIntervalDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'intervalSeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setIntervalDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule a recurring callback using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entfernt einen Timer oder Interval */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'start', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet den Timer-Loop */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Timer-Loop */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sleep', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet asynchron für eine bestimmte Zeit * @deprecated Use sleepDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sleepDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sleep for a duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'waitFor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet auf eine Bedingung mit Timeout * @deprecated Use waitForDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'checkIntervalSeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'waitForDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wait for a condition with timeout using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'checkInterval', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scheduleAt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schedule a callback at a specific timestamp */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNextExecution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get next execution time for a timer */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timeUntilExecution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get time until next execution */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Timer-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJob.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\BackgroundJob', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Background Job für asynchrone Verarbeitung */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'payload', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delay', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retryCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen neuen Job */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'payload', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'retry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen Retry-Job */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'canRetry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Job noch retried werden kann */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isReady', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Job bereit zur Ausführung ist */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/BackgroundJobProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\BackgroundJobProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Processor für Background Jobs */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jobQueue', 'type' => 'App\\Framework\\Async\\AsyncQueue', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConcurrentJobs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerHandler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registriert einen Job-Handler */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'jobType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handler', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'enqueue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Job zur Queue hinzu */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'job', 'type' => 'App\\Framework\\Async\\BackgroundJob', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'start', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet den Job-Processor */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Job-Processor */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Processor-Statistiken zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncCapable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Async\\Contracts\\AsyncCapable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for components that can execute operations asynchronously */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'async', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute operation asynchronously */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sync', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute operation synchronously */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supportsAsync', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if async execution is available */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/Contracts/AsyncOperation.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Async\\Contracts\\AsyncOperation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for async operations with timeout and cancellation support */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute the operation synchronously */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeAsync', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute the operation asynchronously */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeWithTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute with timeout */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCancellable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if operation can be cancelled */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cancel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cancel the operation if possible */', 'namespace' => 'App\\Framework\\Async\\Contracts', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Async/FiberManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Async\\FiberManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zentraler Manager für Fiber-basierte asynchrone Operationen * * Koordiniert die Ausführung von Fibers und bietet High-Level-APIs * für asynchrone Programmierung im Framework. */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'async', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine asynchrone Operation aus und gibt sofort einen Fiber zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operationId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt mehrere Operationen parallel aus * * @param array $operations * @return array */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'asyncGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Generator-basierte asynchrone Operation aus */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'generator', 'type' => 'Generator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'waitForAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet auf die Fertigstellung aller laufenden Fibers */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'throttled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Operationen mit konfigurierbarer Parallelität aus * * @param array $operations * @param int $maxConcurrency Maximale Anzahl paralleler Fibers * @return array */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConcurrency', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Operationen mit Timeout aus * @deprecated Use withTimeoutDuration() instead */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTimeoutDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute operation with timeout using Duration */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'combine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kombiniert mehrere Fibers zu einem einzigen */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fibers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sequence', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Operationen sequenziell aber asynchron aus */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Fiber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset des Managers (für Tests und Cleanup) */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFiberDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get execution duration for a completed fiber */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operationId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFiberRunningTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get running time for an active fiber */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operationId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Statistiken über laufende Fibers zurück */', 'namespace' => 'App\\Framework\\Async', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'fiber' => 'Fiber', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Assets/AsyncAssetProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Assets\\AsyncAssetProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Asynchroner Asset-Processor für CSS, JS und Bilder */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Filesystem\\Storage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet alle Assets parallel * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processCss', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet CSS-Dateien * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processJs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet JavaScript-Dateien * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processImages', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet Bilder * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bundleJs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bündelt JavaScript-Dateien * * @param array $files */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'files', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputFile', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bundleCss', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bündelt CSS-Dateien * * @param array $files */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'files', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputFile', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateImageSizes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert verschiedene Bildgrößen parallel * * @param array> $sizes * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceImage', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sizes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'watch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Überwacht Dateien auf Änderungen und verarbeitet sie automatisch */', 'namespace' => 'App\\Framework\\AsyncExamples\\Assets', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputDir', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Cache/AsyncCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Cache\\AsyncCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Asynchrones Cache System */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheDir', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultTtl', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt einen Wert aus dem Cache */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert einen Wert im Cache */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt mehrere Werte parallel * * @param array $keys * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert mehrere Werte parallel * * @param array $items */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht einen Cache-Eintrag */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deleteMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht mehrere Cache-Einträge parallel * * @param array $keys */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Key existiert */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Leert den gesamten Cache */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt oder erstellt einen Cache-Wert */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rememberMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt mehrere Cache-Werte parallel falls sie nicht existieren * * @param array $callbacks * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callbacks', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Cache-Statistiken zurück * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Cache', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/AsyncDatabase.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Database\\AsyncDatabase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Asynchroner Database Layer */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dsn', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Query aus * * @param array $params */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt mehrere Queries parallel aus * * @param array> $queries [\'key\' => [\'sql\' => \'...\', \'params\' => []], ...] * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryBatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Queries mit begrenzter Parallelität aus * * @param array> $queries * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConcurrency', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'select', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine SELECT-Query aus * * @param array $params * @return array> */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'insert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine INSERT-Query aus * * @param array $data */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'insertMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt mehrere INSERTs parallel aus * * @param array> $records * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'records', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'update', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine UPDATE-Query aus * * @param array $data * @param array $where */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine DELETE-Query aus * * @param array $where */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet eine Transaktion */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bestätigt eine Transaktion */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bricht eine Transaktion ab */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'transaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion in einer Transaktion aus */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die rohe PDO-Verbindung zurück */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'pdo' => 'PDO', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/DatabaseException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Database\\DatabaseException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exception für Database-Fehler */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Database/DatabaseResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Database\\DatabaseResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Database Query Result */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'pdostatement' => 'PDOStatement', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statement', 'type' => 'PDOStatement', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'affectedRows', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt alle Zeilen * @return array> */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'pdostatement' => 'PDOStatement', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt eine Zeile * @return array|false */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'pdostatement' => 'PDOStatement', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array|false', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchColumn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt einen einzelnen Wert */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'pdostatement' => 'PDOStatement', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAffectedRows', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Anzahl betroffener Zeilen zurück */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'pdostatement' => 'PDOStatement', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExecutionTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Ausführungszeit zurück */', 'namespace' => 'App\\Framework\\AsyncExamples\\Database', 'uses' => array ( 'pdostatement' => 'PDOStatement', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/AsyncHttpClient.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Http\\AsyncHttpClient', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Asynchroner HTTP-Client mit Fiber-Unterstützung */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultOptions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet einen GET-Request */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'post', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet einen POST-Request */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'put', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet einen PUT-Request */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet einen DELETE-Request */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requestMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet mehrere Requests parallel * * @param array> $requests [\'key\' => [\'method\' => \'GET\', \'url\' => \'...\', ...]] * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requests', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requestBatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet Requests mit begrenzter Parallelität * * @param array> $requests * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'asyncpool' => 'App\\Framework\\Async\\AsyncPool', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'fiber' => 'Fiber', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requests', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConcurrency', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Http\\HttpException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exception für HTTP-Fehler */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'response', 'type' => '?App\\Framework\\AsyncExamples\\Http\\HttpResponse', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Http/HttpResponse.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Http\\HttpResponse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * HTTP Response Objekt */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statusCode', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSuccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Response erfolgreich war */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'json', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dekodiert JSON Response * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHeader', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt spezifischen Header zurück */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getContentType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Content-Type zurück */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Http', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/AsyncMailer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Mail\\AsyncMailer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Asynchroner Mailer für Bulk-Email-Versand */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => 'App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'send', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet eine einzelne E-Mail */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\AsyncExamples\\Mail\\Email', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sendMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet mehrere E-Mails parallel * * @param array $emails * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emails', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt E-Mails zur Queue hinzu */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\AsyncExamples\\Mail\\Email', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queueMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt mehrere E-Mails zur Queue hinzu * * @param array $emails */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emails', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'startWorker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet den Queue-Worker */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processQueue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet Queue in Batches */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sendNewsletter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sendet Newsletter an mehrere Empfänger * * @param array> $recipients * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subject', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recipients', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stopWorker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Mail-Queue-Worker */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Mailer-Statistiken zurück * * @return array */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( 'asyncqueue' => 'App\\Framework\\Async\\AsyncQueue', 'fibermanager' => 'App\\Framework\\Async\\FiberManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/AsyncExamples/Mail/Email.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\AsyncExamples\\Mail\\Email', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * E-Mail Datenklasse */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subject', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromEmail', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cc', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bcc', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHtml', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attachments', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'html', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt HTML-E-Mail */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subject', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromEmail', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'text', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Text-E-Mail */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subject', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromEmail', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fromName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withCc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt CC-Empfänger hinzu */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cc', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withBcc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt BCC-Empfänger hinzu */', 'namespace' => 'App\\Framework\\AsyncExamples\\Mail', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bcc', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/ApiVersionAttribute.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\ApiVersionAttribute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Attribute to specify API version requirements for controllers and methods */', 'namespace' => 'App\\Framework\\Attributes', 'uses' => array ( 'apiversion' => 'App\\Framework\\Http\\Versioning\\ApiVersion', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'version', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Http\\Versioning\\ApiVersion', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string|ApiVersion $version API version (e.g., "1.0.0", "v2", or ApiVersion instance) * @param string|null $introducedIn Version when this endpoint was introduced * @param string|null $deprecatedIn Version when this endpoint was deprecated * @param string|null $removedIn Version when this endpoint will be removed */', 'namespace' => 'App\\Framework\\Attributes', 'uses' => array ( 'apiversion' => 'App\\Framework\\Http\\Versioning\\ApiVersion', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string|App\\Framework\\Http\\Versioning\\ApiVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'introducedIn', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'deprecatedIn', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'removedIn', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDeprecated', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRemoved', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDeprecatedVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Http\\Versioning\\ApiVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRemovedVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Http\\Versioning\\ApiVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIntroducedVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Http\\Versioning\\ApiVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_CLASS | \\Attribute::TARGET_METHOD', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Route.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'method', 'type' => 'App\\Framework\\Http\\Method', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subdomain', 'type' => 'array|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCompiledRoute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Transform this attribute into a CompiledRoute for the router */', 'namespace' => 'App\\Framework\\Attributes', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'method' => 'App\\Framework\\Http\\Method', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Attributes\\CompiledRoute', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'controller', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD | \\Attribute::IS_REPEATABLE', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/Singleton.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Singleton', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_CLASS', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Attributes/StaticPage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\StaticPage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kennzeichnet eine Controller-Methode, deren Route als statische Seite generiert werden soll. */', 'namespace' => 'App\\Framework\\Attributes', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string|null $outputPath Optionaler benutzerdefinierter Ausgabepfad für die statische Seite * @param bool $prerender Ob die Seite beim Deployment vorgerendert werden soll */', 'namespace' => 'App\\Framework\\Attributes', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputPath', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prerender', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD', 1 => '\\Attribute::IS_REPEATABLE', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/Attributes/IpAuth.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Attributes\\IpAuth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Attribute für IP-basierte Authentifizierung */', 'namespace' => 'App\\Framework\\Auth\\Attributes', 'uses' => array ( 'ipauthpolicy' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $allowedIps Array von erlaubten IP-Adressen/Patterns/CIDR-Ranges * @param array $deniedIps Array von verbotenen IP-Adressen/Patterns/CIDR-Ranges * @param bool $localOnly Nur lokale IP-Adressen erlauben * @param bool $adminOnly Nur localhost (127.0.0.1, ::1) erlauben * @param bool $denyPublic Öffentliche IP-Adressen explizit verbieten * @param string $policyName Name einer vordefinierten Policy */', 'namespace' => 'App\\Framework\\Auth\\Attributes', 'uses' => array ( 'ipauthpolicy' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowedIps', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'deniedIps', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'localOnly', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'adminOnly', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'denyPublic', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'policyName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createPolicy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create IpAuthPolicy from this attribute */', 'namespace' => 'App\\Framework\\Auth\\Attributes', 'uses' => array ( 'ipauthpolicy' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'localOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory methods for common scenarios */', 'namespace' => 'App\\Framework\\Auth\\Attributes', 'uses' => array ( 'ipauthpolicy' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'adminOnly', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allowIps', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $ips */', 'namespace' => 'App\\Framework\\Auth\\Attributes', 'uses' => array ( 'ipauthpolicy' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ips', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'denyIps', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $ips */', 'namespace' => 'App\\Framework\\Auth\\Attributes', 'uses' => array ( 'ipauthpolicy' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ips', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD | \\Attribute::TARGET_CLASS', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/Auth.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\Auth', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $allowedIps * @param array $roles */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowedIps', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'roles', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD | \\Attribute::IS_REPEATABLE', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/AuthenticationService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\AuthenticationService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Authentication Service * * Provides user authentication, session management, and security features * including rate limiting, account lockout, and brute force protection. */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'passwordHasher', 'type' => 'App\\Framework\\Auth\\PasswordHasher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionIdGenerator', 'type' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'repository', 'type' => 'App\\Framework\\Auth\\AuthenticationRepository', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimiter', 'type' => '?App\\Framework\\Auth\\RateLimitService', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authenticate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Authenticate user with credentials */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\AuthenticationResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifier', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ipAddress', 'type' => '?App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'remember', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authenticateWithSession', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Authenticate with session */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\AuthenticationResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => 'App\\Framework\\Http\\Session\\SessionId', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ipAddress', 'type' => '?App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'authenticateWithRememberToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Authenticate with remember token */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\AuthenticationResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenValue', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ipAddress', 'type' => '?App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logout user and clean up session */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionId', 'type' => 'App\\Framework\\Http\\Session\\SessionId', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logoutAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logout from all sessions (global logout) */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'changePassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Change user password */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'hash' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'sessionid' => 'App\\Framework\\Http\\Session\\SessionId', 'sessionidgenerator' => 'App\\Framework\\Http\\Session\\SessionIdGenerator', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\PasswordChangeResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentPassword', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newPassword', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/HashedPassword.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\HashedPassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * HashedPassword Value Object * * Immutable representation of a hashed password with metadata about the * hashing algorithm and parameters used. Encapsulates the DerivedKey * for secure password storage and verification. */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $parameters */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'derivedKey', 'type' => 'App\\Framework\\Cryptography\\DerivedKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDerivedKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from DerivedKey */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'derivedKey', 'type' => 'App\\Framework\\Cryptography\\DerivedKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDerivedKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying DerivedKey */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DerivedKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the algorithm used */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the parameters used for hashing * @return array */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashedAt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get when the password was hashed */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'serialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Serialize for storage (database) */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deserialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Deserialize from storage */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serialized', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'needsRehash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if rehashing is needed based on current standards * @param array $currentParameters */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentParameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSafeSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get safe representation for logging (no sensitive data) * @return array */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLegacy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password is using a legacy algorithm */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isUsingRecommendedAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password is using recommended algorithm */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStrengthAssessment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get strength assessment */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\PasswordStrength', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isExpired', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password hash is expired (for rotation policies) */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxAgeInDays', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAgeInDays', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get age in days */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'derivedkey' => 'App\\Framework\\Cryptography\\DerivedKey', 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordHasher.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\PasswordHasher', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Password Hasher Service * * Provides secure password hashing and verification using the framework\'s * cryptography module. Supports automatic rehashing when security standards * are updated. */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'MIN_PASSWORD_LENGTH', 'value' => '8', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'MAX_PASSWORD_LENGTH', 'value' => '4096', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'LEVEL_LOW', 'value' => '\'low\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'LEVEL_STANDARD', 'value' => '\'standard\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'LEVEL_HIGH', 'value' => '\'high\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'kdf', 'type' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultSecurityLevel', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash a plain text password */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\HashedPassword', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'plainPassword', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLevel', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify a password against a hash */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'plainPassword', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashedPassword', 'type' => 'App\\Framework\\Auth\\HashedPassword', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'needsRehash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a password hash needs to be rehashed */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashedPassword', 'type' => 'App\\Framework\\Auth\\HashedPassword', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLevel', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rehashIfNeeded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rehash a password if needed (requires plain password) */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Auth\\HashedPassword', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'plainPassword', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentHash', 'type' => 'App\\Framework\\Auth\\HashedPassword', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLevel', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validatePasswordStrength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate password strength */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\PasswordValidationResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'plainPassword', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'SensitiveParameter', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSecurePassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a secure random password */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeUppercase', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeLowercase', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeNumbers', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeSpecialChars', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludeChars', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create hasher with custom configuration */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( 'keyderivationfunction' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'invalidargumentexception' => 'InvalidArgumentException', 'sensitiveparameter' => 'SensitiveParameter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'kdf', 'type' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLevel', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordStrength.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\PasswordStrength', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Password Strength Enum * * Represents the strength assessment of a hashed password * based on the algorithm and parameters used. */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'VERY_STRONG', 'value' => '\'very_strong\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STRONG', 'value' => '\'strong\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MODERATE', 'value' => '\'moderate\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WEAK', 'value' => '\'weak\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UNKNOWN', 'value' => '\'unknown\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLabel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human-readable label */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get security score (0-100) */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldRehash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if rehash is recommended */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getColor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get color for UI representation */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/PasswordValidationResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\PasswordValidationResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Password Validation Result Value Object * * Immutable result of password strength validation containing * errors, warnings, and strength assessment. */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $errors * @param array $warnings */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isValid', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errors', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'warnings', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strengthScore', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strength', 'type' => 'App\\Framework\\Auth\\PasswordStrength', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password has any errors */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasWarnings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password has any warnings */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllIssues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all issues (errors and warnings combined) * @return array */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'meetsMinimumRequirements', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password meets minimum security requirements */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRecommended', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if password is recommended for use */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human-readable summary */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for API responses * @return array */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'valid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a valid result with no issues */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strengthScore', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create an invalid result with errors * @param array $errors */', 'namespace' => 'App\\Framework\\Auth', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'errors', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strengthScore', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthDecision.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für IP-Authentifizierungs-Entscheidungen */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allowed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create allowed decision */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'matchedPattern', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'denied', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create denied decision */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'matchedPattern', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAllowed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if access is allowed */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDenied', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if access is denied */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDecision', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human-readable decision */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array * @return array */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to string representation */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Auth/ValueObjects/IpAuthPolicy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für IP-basierte Authentifizierungs-Richtlinien */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param IpPattern[] $allowedPatterns * @param IpPattern[] $deniedPatterns */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowedPatterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'deniedPatterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requireLocalAccess', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'denyPublicAccess', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create policy from configuration array * @param array $config */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'localOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create local-only policy */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'adminOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create admin-only policy (localhost only) */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create development policy (local networks allowed) */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allowIps', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create policy allowing specific IPs * @param string[] $ips */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ips', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'denyIps', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create policy denying specific IPs * @param string[] $ips */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ips', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAllowed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if IP is allowed by this policy */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDenied', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if IP is explicitly denied */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAccessDecision', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get access decision with reason */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthDecision', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'combineWith', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Combine with another policy (logical AND) */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Auth\\ValueObjects\\IpAuthPolicy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRestrictive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if policy is restrictive (has any restrictions) */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allowsLocalAccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if policy allows local access */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array representation * @return array */', 'namespace' => 'App\\Framework\\Auth\\ValueObjects', 'uses' => array ( 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'ippattern' => 'App\\Framework\\Http\\ValueObjects\\IpPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Cache', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache items for one or more identifiers (keys, tags, prefixes) * Returns CacheResult with all matching items (hits and misses) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set one or more cache items * Each CacheItem can have its own TTL */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if one or more identifiers exist in cache * @return array Identifier string => exists */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove cache items by identifiers (keys, tags, prefixes) * Supports batch operations and different identifier types */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all cache items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Callback aus, wenn Wert nicht im Cache ist ("Remember"-Pattern) * und cached das Ergebnis für die gewünschte Zeit */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheBuilder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Builder für die einfache Komposition von Cache-Decorators * * Ermöglicht eine fluent API für das Erstellen von Cache-Instanzen * mit verschiedenen Decorators. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet mit einem Base-Cache */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withLogging', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Logging-Funktionalität hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withCompression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Komprimierung hinzu * * @deprecated Use GeneralCache with compression parameter instead */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'App\\Framework\\Cache\\CompressionAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializer', 'type' => 'App\\Framework\\Serializer\\Serializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Performance-Metriken hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withValidation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Validierung hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt Event-Dispatching hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withCustomDecorator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen benutzerdefinierten Decorator hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'decoratorFactory', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'build', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Cache-Instanz mit allen konfigurierten Decorators */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFull', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convenience-Methode für eine vollständig ausgestattete Cache-Instanz */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compression', 'type' => 'App\\Framework\\Cache\\CompressionAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializer', 'type' => 'App\\Framework\\Serializer\\Serializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'validationConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createPerformant', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convenience-Methode für eine Performance-optimierte Cache-Instanz */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compression', 'type' => 'App\\Framework\\Cache\\CompressionAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializer', 'type' => 'App\\Framework\\Serializer\\Serializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createDevelopment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convenience-Methode für eine Development-Cache-Instanz mit vollständigem Monitoring */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'validationConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheDriver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheDriver', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get multiple cache items by keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set multiple cache items * Note: CacheDrivers expect values to be serialized strings when needed */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if multiple keys exist * @return array Key string to existence mapping */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove multiple keys from cache */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all cache data */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifier.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheIdentifier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for cache identifiers (keys, tags, prefixes, patterns) * Provides unified way to identify cache items for operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get string representation of the identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the type of cache identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheIdentifierType', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this identifier equals another */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this identifier matches a cache key * Used for filtering operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNormalizedString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a normalized string for internal cache operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheIdentifierCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of cache identifiers for batch operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromIdentifiers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from CacheIdentifiers using spread operator */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create empty collection */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentifiers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all identifiers as array * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only cache keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKeyCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only cache tags * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPrefixes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only cache prefixes * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter by identifier type */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Cache\\CacheIdentifierType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'contains', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection contains specific identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifier', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter identifiers by predicate */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicate', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map over identifiers */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mapper', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add another identifier collection */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a single identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifier', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove duplicates based on string representation */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection is empty */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toStringArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get identifiers as string array * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'groupByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Group identifiers by type * @return array> */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Countable implementation */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IteratorAggregate implementation * @return Traversable */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheIdentifierType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheIdentifierType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum for different types of cache identifiers */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'KEY', 'value' => '\'key\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TAG', 'value' => '\'tag\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PREFIX', 'value' => '\'prefix\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PATTERN', 'value' => '\'pattern\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supportsBatchOperations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this type supports batch operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isExactMatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this type supports exact matching */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get description for debugging */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncService', 'type' => '?App\\Framework\\Async\\AsyncService', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'redisHost', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'redisPort', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionLevel', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minCompressionLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableAsync', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheItem.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheItem', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'miss', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forSet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a cache item for setting (not from cache retrieval) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromValues', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => 'int|App\\Framework\\Core\\ValueObjects\\Duration|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasTtl', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this item has a TTL set */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTtl', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new cache item with different TTL */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new cache item with different value */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für Cache-Schlüssel * Stellt sicher, dass Cache-Schlüssel gültig und konsistent sind */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifier', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen CacheKey aus einem String */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromStringSafe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key with automatic truncation for very long keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen CacheKey mit Namespace */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forObject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen CacheKey für ein bestimmtes Objekt */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'suffix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen CacheKey für eine Klasse */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'suffix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen CacheKey für eine Abfrage */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen CacheKey für eine Sammlung von Daten */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Schlüssel als String zurück */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Schlüssel als String zurück */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withSuffix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Suffix zum Schlüssel hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'suffix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Namespace zum Schlüssel hinzu */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matches', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob der Schlüssel einem Muster entspricht */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob zwei CacheKeys gleich sind */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the type of cache identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheIdentifierType', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this identifier matches a cache key (CacheIdentifier interface) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNormalizedString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a normalized string for internal cache operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheKeyCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheKeyCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of cache keys for batch operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from CacheKeys using spread operator */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create empty collection */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all keys as array * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'first', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get first key or null if empty */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'last', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get last key or null if empty */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'contains', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection contains specific key */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter keys by predicate */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicate', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map over keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mapper', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add another key collection */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a single key */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove duplicates based on string representation */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection is empty */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toStringArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get keys as string array * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Countable implementation */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IteratorAggregate implementation * @return Traversable */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePattern.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CachePattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache pattern identifier for wildcard-based operations * Supports patterns like "user:*", "cache.*.data", etc. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifier', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromWildcard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache pattern from wildcard string * * Supports: * - user:* (matches user:123, user:456, etc.) * - cache.*.data (matches cache.sessions.data, cache.users.data) * - temp:** (matches temp:anything:nested:deeply) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create pattern for all keys with prefix */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create pattern for all user-related keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'string|int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forSessions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create pattern for all session keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forTemporary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create pattern for temporary keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create pattern for namespace */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheIdentifierType', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesKey', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNormalizedString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the original wildcard pattern */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCompiledRegex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compiled regex pattern */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSimplePrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if pattern is simple prefix (ends with single *) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get prefix part for simple prefix patterns */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDeepPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if pattern matches deep nesting (**) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSelectivity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Estimate selectivity (0.0 = matches everything, 1.0 = very specific) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CachePrefix.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CachePrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache prefix identifier for prefix-based operations * Allows operations on all cache items with specific prefix */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifier', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache prefix from string */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'general', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create prefix for general cache items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create prefix for query cache items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'session', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create prefix for session items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create prefix for specific namespace */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create prefix for user-related items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'string|int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forTemporary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create prefix for temporary items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get string representation of the prefix */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the type of cache identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheIdentifierType', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this prefix equals another identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this prefix matches a cache key */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNormalizedString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a normalized string for internal cache operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a cache key with this prefix */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'suffix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'removeFromKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove this prefix from a cache key string */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasTrailingSeparator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if prefix ends with separator */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTrailingSeparator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ensure prefix has trailing separator */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of cache items returned from multi-key cache operations * Provides convenient access to hits, misses, and individual items * * Backward compatibility: For single-key operations, provides direct access * to isHit and value properties of the first item */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'isHit', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Backward compatibility: TRUE if at least one item is a hit */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'value', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Backward compatibility: Value of the first item (for single-key operations) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'type' => 'mixed', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromItems', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from CacheItems using spread operator */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from key-value pairs * @param array $data */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create empty result */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getItem', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache item for specific key */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getItems', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all cache items * @return array Keyed by cache key string */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHits', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only cache hits as new CacheResult */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMisses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only cache misses as new CacheResult */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasHit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if specific key resulted in a cache hit */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasMiss', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if specific key resulted in a cache miss */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHitRatio', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hit ratio as percentage (0.0 to 1.0) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHitValues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get values for all cache hits * @return array Keyed by cache key string */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHitKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache keys that resulted in hits */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKeyCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMissKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache keys that resulted in misses */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKeyCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all cache keys */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKeyCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if result contains any items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompleteHit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if all requested keys were cache hits */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompleteMiss', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if all requested keys were cache misses */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get value for specific key, or null if miss */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter results by predicate, returns new CacheResult */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicate', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map over cache items, returns new CacheResult */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mapper', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Merge with another CacheResult */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Countable implementation */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IteratorAggregate implementation * @return Traversable */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for debugging * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CacheTag.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CacheTag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache tag identifier for grouping and batch operations * Allows invalidating multiple cache items by tag */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheIdentifier', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache tag from string */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tag', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache tag for specific domain/type */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache tag for user-related items */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'string|int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache tag for entity type */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get string representation of the tag */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the type of cache identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheIdentifierType', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this tag equals another identifier */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this tag matches a cache key * Tags match keys that contain the tag in their metadata */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNormalizedString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a normalized string for internal cache operations */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createKeyWithTag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a cache key that includes this tag */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if tag matches a pattern */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Cacheable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Cacheable', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string|null $key Template z.B.: "user:profile:{id}" */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Commands/ClearCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Commands\\ClearCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '"cache:clear"', 1 => '"Clears all caches (application, discovery, routes, opcache, redis)"', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flushRedis', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '"redis:flush"', 1 => '"Advanced Redis cache clearing with options"', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/GzipCompression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Compression\\GzipCompression', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CompressionAlgorithm', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionLevel', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minLengthToCompress', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'forceCompression', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decompress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompressed', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NoCompression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Compression\\NoCompression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * No-operation compression algorithm that performs no compression * * This implements the Null Object Pattern for compression, * allowing the cache system to work without null checks. */', 'namespace' => 'App\\Framework\\Cache\\Compression', 'uses' => array ( 'compressionalgorithm' => 'App\\Framework\\Cache\\CompressionAlgorithm', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CompressionAlgorithm', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'forceCompression', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decompress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompressed', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Compression/NullCompression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Compression\\NullCompression', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CompressionAlgorithm', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'forceCompression', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decompress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompressed', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/CompressionAlgorithm.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\CompressionAlgorithm', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compress', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Komprimiert einen Wert. Rückgabe kann String oder Binärdaten sein. * Gibt bei $forceCompression ein Flag an, ob immer komprimiert werden soll. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'forceCompression', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decompress', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dekodiert einen Wert, falls komprimiert; ansonsten unverändert zurückgeben. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompressed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt true zurück, falls $value komprimiert ist (z.B. am Prefix erkennbar) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Contracts/DriverAccessible.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for cache implementations that can provide access to their underlying driver * * This allows proper access to driver-specific features like scanning * without resorting to reflection APIs. */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( 'cachedriver' => 'App\\Framework\\Cache\\CacheDriver', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying cache driver for direct access * * @return CacheDriver|null The driver, or null if not available */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( 'cachedriver' => 'App\\Framework\\Cache\\CacheDriver', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheDriver', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'driverSupports', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the underlying driver supports a specific interface * * @param class-string $interface The interface to check for * @return bool Whether the driver implements the interface */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( 'cachedriver' => 'App\\Framework\\Cache\\CacheDriver', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Contracts/Scannable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for cache drivers that support key scanning operations * * Not all drivers can efficiently scan keys, so this is optional. * Drivers that implement this interface can provide pattern-based operations. */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Scan for keys matching a pattern * * @param string $pattern Wildcard pattern (e.g., "user:*", "cache.*.data") * @param int $limit Maximum number of keys to return (0 = no limit) * @return array Array of matching key strings */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Scan for keys with a specific prefix * * @param string $prefix Key prefix to match * @param int $limit Maximum number of keys to return (0 = no limit) * @return array Array of matching key strings */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all available keys (use with caution on large datasets) * * @param int $limit Maximum number of keys to return (0 = no limit) * @return array Array of all key strings */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScanPerformance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance characteristics of scanning for this driver * * @return array{ * efficient: bool, * max_recommended_keys: int, * estimated_time_per_1000_keys: float * } */', 'namespace' => 'App\\Framework\\Cache\\Contracts', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/ApcuCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Driver\\ApcuCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheDriver', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/FileCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Driver\\FileCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheDriver', 1 => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystem', 'type' => 'App\\Framework\\Filesystem\\Storage', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanPrefix', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScanPerformance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/InMemoryCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Driver\\InMemoryCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheDriver', 1 => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanPrefix', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScanPerformance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/NullCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Driver\\NullCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheDriver', 1 => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanPrefix', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScanPerformance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Driver/RedisCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\CacheDriver', 1 => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Redis\\RedisConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keys', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanPrefix', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScanPerformance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/EventCacheDecorator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\EventCacheDecorator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache-Decorator für Event-Dispatching * * Dieser Decorator feuert Events für alle Cache-Operationen, * was eine lose gekoppelte Überwachung und Reaktion ermöglicht. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'cacheclear' => 'App\\Framework\\Cache\\Events\\CacheClear', 'cachedelete' => 'App\\Framework\\Cache\\Events\\CacheDelete', 'cachehit' => 'App\\Framework\\Cache\\Events\\CacheHit', 'cachemiss' => 'App\\Framework\\Cache\\Events\\CacheMiss', 'cacheset' => 'App\\Framework\\Cache\\Events\\CacheSet', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'innerCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheClear.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Events\\CacheClear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when the entire cache is cleared */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new CacheClear event with the current timestamp */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheDelete.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Events\\CacheDelete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a key is deleted from cache */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new CacheDelete event with the current timestamp */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheHit.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Events\\CacheHit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a cache hit occurs */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'valueSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new CacheHit event with the current timestamp */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'valueSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheMiss.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Events\\CacheMiss', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a cache miss occurs */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new CacheMiss event with the current timestamp */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Events/CacheSet.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Events\\CacheSet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a value is set in cache */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'valueSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new CacheSet event with the current timestamp */', 'namespace' => 'App\\Framework\\Cache\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'valueSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/FileCacheCleaner.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\FileCacheCleaner', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystem', 'type' => 'App\\Framework\\Filesystem\\Storage', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheFolder', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clean', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht alle abgelaufenen Cache-Dateien im Cache-Verzeichnis. * Rückgabe: Anzahl gelöschter Dateien */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'filestorage' => 'App\\Framework\\Filesystem\\FileStorage', 'storage' => 'App\\Framework\\Filesystem\\Storage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/GeneralCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\GeneralCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', 1 => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'adapter', 'type' => 'App\\Framework\\Cache\\CacheDriver', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializer', 'type' => 'App\\Framework\\Serializer\\Serializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionAlgorithm', 'type' => 'App\\Framework\\Cache\\CompressionAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'autoCompress', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying cache driver (implements DriverAccessible) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'nocompression' => 'App\\Framework\\Cache\\Compression\\NoCompression', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheDriver', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'driverSupports', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the underlying driver supports a specific interface */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'nocompression' => 'App\\Framework\\Cache\\Compression\\NoCompression', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasCompressionEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if compression is enabled */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'nocompression' => 'App\\Framework\\Cache\\Compression\\NoCompression', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCompressionStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compression statistics */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'nocompression' => 'App\\Framework\\Cache\\Compression\\NoCompression', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'serializer' => 'App\\Framework\\Serializer\\Serializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/LoggingCacheDecorator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\LoggingCacheDecorator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'innerCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Metrics\\CacheMetrics', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Metrics\\CacheMetricsInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'persistenceFile', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__destruct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'enableDebugMode', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordHit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'size', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordMiss', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordSet', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'size', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordDelete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordClear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatsForDriver', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHitRate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHeaviestKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheMetricsInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Metrics\\CacheMetricsInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordHit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a cache hit */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'size', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordMiss', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a cache miss */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordSet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a cache set operation */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'size', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordDelete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a cache delete operation */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordClear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a cache clear operation */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive cache statistics */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatsForDriver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics for a specific driver */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset all statistics */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHitRate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get real-time hit rate */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get most frequently accessed keys */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHeaviestKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get largest cached items */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/CacheStatsSnapshot.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Metrics\\CacheStatsSnapshot', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRate', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalHits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalMisses', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalSets', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalDeletes', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalClears', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driverStats', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'topKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'heaviestKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'avgLatency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalOperations', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEfficiencyRating', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateOpsPerSecond', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendations', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/Metrics/MetricsDecoratedCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\Metrics\\MetricsDecoratedCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'inner', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metrics', 'type' => 'App\\Framework\\Cache\\Metrics\\CacheMetricsInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driverName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => '?App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceEnabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInner', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying cache instance (for advanced usage) */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheidentifier' => 'App\\Framework\\Cache\\CacheIdentifier', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cacheresult' => 'App\\Framework\\Cache\\CacheResult', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the metrics collector */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheidentifier' => 'App\\Framework\\Cache\\CacheIdentifier', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cacheresult' => 'App\\Framework\\Cache\\CacheResult', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Metrics\\CacheMetricsInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriverName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the driver name */', 'namespace' => 'App\\Framework\\Cache\\Metrics', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheidentifier' => 'App\\Framework\\Cache\\CacheIdentifier', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cacheresult' => 'App\\Framework\\Cache\\CacheResult', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/MultiLevelCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\MultiLevelCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', 1 => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fastCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying cache driver (uses slow cache as primary) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheDriver', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'driverSupports', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the underlying driver supports a specific interface */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the slow cache (primary storage layer) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFastCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the fast cache (quick access layer) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ServiceCacheDecorator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\ServiceCacheDecorator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__call', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @throws ReflectionException */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'reflectionexception' => 'ReflectionException', 'reflectionmethod' => 'ReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'args', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying cache driver */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'reflectionexception' => 'ReflectionException', 'reflectionmethod' => 'ReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheDriver', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'driverSupports', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the underlying driver supports a specific interface */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'reflectionexception' => 'ReflectionException', 'reflectionmethod' => 'ReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the wrapped cache instance */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'reflectionexception' => 'ReflectionException', 'reflectionmethod' => 'ReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/SmartCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\SmartCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Smart cache implementation that replaces AsyncAwareCache * * Features: * - Integrated async functionality with intelligent batching * - Pattern and prefix support for bulk operations * - Automatic async/sync decision making * - Backward compatibility with existing Cache interface */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', 1 => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'innerCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncService', 'type' => '?App\\Framework\\Async\\AsyncService', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncEnabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rememberMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bulk remember operation with intelligent async processing * * @param array $keyCallbackPairs * @return array */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyCallbackPairs', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive stats including smart cache metrics */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWrappedCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the wrapped cache instance for advanced usage */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\Cache', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDriver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying cache driver (implements DriverAccessible) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\CacheDriver', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'driverSupports', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the underlying driver supports a specific interface */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTagIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the tag index (if available) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Cache\\TagIndex', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Tag a cache item with one or more tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'App\\Framework\\Cache\\CacheTag', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'untag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove tags from a cache item */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'driveraccessible' => 'App\\Framework\\Cache\\Contracts\\DriverAccessible', 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'App\\Framework\\Cache\\CacheTag', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TagIndex.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\TagIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Tag index system for cache tag management * * Manages the mapping between cache tags and their associated keys. * Uses a separate namespace in the cache to store tag-to-key mappings. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'App\\Framework\\Cache\\CacheDriver', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tagKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a key to one or more tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'App\\Framework\\Cache\\CacheTag', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'untagKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove a key from one or more tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'App\\Framework\\Cache\\CacheTag', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeysForTag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all keys associated with a tag */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tag', 'type' => 'App\\Framework\\Cache\\CacheTag', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTagsForKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all tags associated with a key */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'removeKeyFromAllTags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove a key from all its tags (used when key is deleted) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllTags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all available tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearAllTags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all tags and their indexes */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics about the tag system */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'scannable' => 'App\\Framework\\Cache\\Contracts\\Scannable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/TaggedCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\TaggedCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Tagged cache utility for easy cache tagging operations * * Provides a fluent API for working with cache tags on top of SmartCache. * This is a convenience wrapper that makes tag operations more intuitive. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\SmartCache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new TaggedCache instance with additional tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'string|App\\Framework\\Cache\\CacheTag', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'put', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Store a value with the current tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string|App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a value (no automatic tagging for retrieval) */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string|App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remember a value with the current tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string|App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flush', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Flush all items with any of the current tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'all', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all items tagged with any of the current tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if items with the current tags exist */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTagStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics for the current tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying SmartCache instance */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\SmartCache', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the current tags */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'make', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a tagged cache instance from a regular cache */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\SmartCache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cache/ValidationCacheDecorator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cache\\ValidationCacheDecorator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache-Decorator für Validierung von Keys und Values * * Dieser Decorator stellt sicher, dass Cache-Operationen nur mit validen * Daten durchgeführt werden und kann Sicherheitsrichtlinien durchsetzen. */', 'namespace' => 'App\\Framework\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Cache\\Cache', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'innerCache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'App\\Framework\\Cache\\CacheItem', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifiers', 'type' => 'App\\Framework\\Cache\\CacheIdentifier', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remember', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheItem', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreaker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Circuit Breaker Pattern Implementation * * Schützt das System vor wiederholten Fehlern durch temporäres Blockieren von Requests * nach einer bestimmten Anzahl von Fehlern. * * States: * - CLOSED: Normal operation, alle Requests werden durchgelassen * - OPEN: Service ist als fehlerhaft markiert, alle Requests werden abgelehnt * - HALF_OPEN: Test-Phase, limitierte Requests werden durchgelassen */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\CircuitBreakerInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventPublisher', 'type' => '?App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceRegistry', 'type' => '?App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'check', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob der Circuit Breaker für einen Service offen ist * * @throws CircuitBreakerException wenn der Circuit Breaker offen ist */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordSuccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Markiert einen erfolgreichen Aufruf */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordFailure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Markiert einen fehlgeschlagenen Aufruf */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Operation mit Circuit Breaker Schutz aus * * @template T * @param callable(): T $operation * @return T * @throws Throwable */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getState', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den aktuellen Zustand des Circuit Breakers zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt detaillierte Metriken für einen Service zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Circuit Breaker für einen Service zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt alle Circuit Breaker zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'circuitbreakerclosed' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'circuitbreakereventpublisher' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'circuitbreakerhalfopened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'circuitbreakeropened' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konfiguration für Circuit Breaker */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'recoveryTimeout', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'metricsRetentionTime', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'slidingWindowSize', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'halfOpenMaxAttempts', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'successThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metricsRetentionTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slidingWindowSize', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failurePredicate', 'type' => '?App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldTriggerOnException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob eine Exception den Circuit Breaker triggern soll */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forExternalService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration für externe Services */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forDatabase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration für Datenbank-Verbindungen */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'strict', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine strenge Konfiguration für kritische Services */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withDurations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Komfortmethode für Duration-basierte Konfiguration */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slidingWindow', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metricsRetention', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failurePredicate', 'type' => '?App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withFailurePredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration mit custom FailurePredicate */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failurePredicate', 'type' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forHttpClient', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration für HTTP Client */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forTimeoutErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration die nur Timeout-Fehler behandelt */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'failurepredicate' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exception thrown when Circuit Breaker is in OPEN state */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'state', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retryAfterSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerInitializer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Initializer für Circuit Breaker Services */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'nullcache' => 'App\\Framework\\Cache\\Driver\\NullCache', 'generalcache' => 'App\\Framework\\Cache\\GeneralCache', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'initializer' => 'App\\Framework\\DI\\Initializer', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'logger' => 'App\\Framework\\Logging\\Logger', 'jsonserializer' => 'App\\Framework\\Serializer\\Json\\JsonSerializer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initializeCircuitBreaker', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for Circuit Breaker implementations * * Provides a contract for circuit breaker functionality * that can be implemented by different circuit breaker implementations * or test doubles. */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get metrics for a service * * @param string $service Service name * @return CircuitBreakerMetrics Service metrics */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Manager für Circuit Breaker Monitoring und Management */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceRegistry', 'type' => '?App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'configurations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCircuitBreaker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Holt oder erstellt einen Circuit Breaker für einen Service */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllServicesStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den aktuellen Status aller Services zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getGlobalStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt aggregierte Statistiken zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt alle Circuit Breaker zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt einen spezifischen Service zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performHealthChecks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Health Checks für alle konfigurierten Services durch */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportConfiguration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exportiert Konfiguration für Monitoring-Tools */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'importConfiguration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Importiert Konfiguration */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withDefaults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für Standard-Setup */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'serviceregistry' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceRegistry', 'type' => '?App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für Circuit Breaker Metriken * * Immutable Datenstruktur die alle relevanten Metriken * eines Circuit Breakers enthält. */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'state', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failureCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'successCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'halfOpenAttempts', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lastFailureTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'openedAt', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAvailable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob der Circuit Breaker verfügbar ist (CLOSED oder HALF_OPEN) */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBlocked', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob der Circuit Breaker blockiert (OPEN) */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isInTestPhase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob sich der Circuit Breaker in der Test-Phase befindet */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUptimeDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet die Dauer seit dem Öffnen */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeSinceLastFailure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet die Dauer seit dem letzten Fehler */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasRecoveryTimeoutExpired', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob genug Zeit seit dem letzten Fehler vergangen ist */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRetryAfterDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet die Zeit bis zum nächsten Retry-Versuch */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recoveryTimeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine zusammenfassende Beschreibung des aktuellen Zustands zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array-Format (für Backward-Compatibility) */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Metriken aus Array-Daten (für Migration) */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'state', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitBreakerMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMiddleware', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Middleware zur Integration von Circuit Breaker Pattern in HTTP-Requests */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'headers' => 'App\\Framework\\Http\\Headers', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'middlewarecontext' => 'App\\Framework\\Http\\MiddlewareContext', 'next' => 'App\\Framework\\Http\\Next', 'request' => 'App\\Framework\\Http\\Request', 'requeststatemanager' => 'App\\Framework\\Http\\RequestStateManager', 'status' => 'App\\Framework\\Http\\Status', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\HttpMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'protectedServices', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\MiddlewareContext', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Http\\MiddlewareContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'App\\Framework\\Http\\Next', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stateManager', 'type' => 'App\\Framework\\Http\\RequestStateManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forApi', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method für Standard-API-Schutz */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'headers' => 'App\\Framework\\Http\\Headers', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'middlewarecontext' => 'App\\Framework\\Http\\MiddlewareContext', 'next' => 'App\\Framework\\Http\\Next', 'request' => 'App\\Framework\\Http\\Request', 'requeststatemanager' => 'App\\Framework\\Http\\RequestStateManager', 'status' => 'App\\Framework\\Http\\Status', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forAdmin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method für Admin-Bereich-Schutz */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'headers' => 'App\\Framework\\Http\\Headers', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'httpresponse' => 'App\\Framework\\Http\\HttpResponse', 'middlewarecontext' => 'App\\Framework\\Http\\MiddlewareContext', 'next' => 'App\\Framework\\Http\\Next', 'request' => 'App\\Framework\\Http\\Request', 'requeststatemanager' => 'App\\Framework\\Http\\RequestStateManager', 'status' => 'App\\Framework\\Http\\Status', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/CircuitState.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Circuit Breaker States nach dem Circuit Breaker Pattern * * CLOSED: Normal operation, requests allowed * OPEN: Failures exceeded threshold, requests blocked * HALF_OPEN: Testing if service recovered */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLOSED', 'value' => '\'closed\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OPEN', 'value' => '\'open\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HALF_OPEN', 'value' => '\'half_open\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Commands/CircuitBreakerCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Commands\\CircuitBreakerCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Console Command für Circuit Breaker Management */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Commands', 'uses' => array ( 'circuitbreakermanager' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerManager', 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'consoleinput' => 'App\\Framework\\Console\\ConsoleInput', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'exitcode' => 'App\\Framework\\Console\\ExitCode', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreakerManager', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'circuit-breaker\'', 'description' => '\'Manage circuit breakers - status, reset, health checks\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/DatabaseCircuitBreaker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\DatabaseCircuitBreaker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Circuit Breaker speziell für Datenbankverbindungen */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'pdoexception' => 'PDOException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Datenbankoperation mit Circuit Breaker Schutz aus * * @template T * @param callable(ConnectionInterface): T $operation * @return T * @throws CircuitBreakerException|DatabaseException|Throwable */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'pdoexception' => 'PDOException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'healthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft die Datenbankverbindung */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'pdoexception' => 'PDOException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den aktuellen Status des Database Circuit Breakers zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'pdoexception' => 'PDOException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Database Circuit Breaker zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'pdoexception' => 'PDOException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerClosed.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerClosed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a circuit breaker closes (transitions to CLOSED state) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Events', 'uses' => array ( 'circuitbreakermetrics' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'circuitstate' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEvent', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'eventType', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'severity', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'newState', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'occurredAt', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previousState', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metrics', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurredAt', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for all Circuit Breaker events */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Events', 'uses' => array ( 'circuitbreakermetrics' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'circuitstate' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'service', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'namespace', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'previousState', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'newState', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'metrics', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'occurredAt', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'reason', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'eventType', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'severity', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerEventPublisher.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEventPublisher', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Publishes Circuit Breaker events to the event bus and logs them */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Events', 'uses' => array ( 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventBus', 'type' => 'App\\Framework\\EventBus\\EventBus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'publish', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Publish a circuit breaker event */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Events', 'uses' => array ( 'eventbus' => 'App\\Framework\\EventBus\\EventBus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerHalfOpened.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerHalfOpened', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a circuit breaker transitions to HALF_OPEN state */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Events', 'uses' => array ( 'circuitbreakermetrics' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'circuitstate' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEvent', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'eventType', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'severity', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'newState', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'occurredAt', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previousState', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metrics', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurredAt', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Events/CircuitBreakerOpened.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerOpened', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a circuit breaker opens (transitions to OPEN state) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Events', 'uses' => array ( 'circuitbreakermetrics' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'circuitstate' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\Events\\CircuitBreakerEvent', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'eventType', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'severity', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'newState', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'occurredAt', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previousState', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metrics', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurredAt', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Examples/FailurePredicateUsageExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Examples\\FailurePredicateUsageExample', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Usage examples for the new FailurePredicate system */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exampleFactoryUsage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example 1: Using factory methods for common scenarios */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exampleBuilderUsage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example 2: Using the fluent builder for custom predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exampleServiceSpecificPredicates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example 3: Service-specific predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exampleAdvancedCombinations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example 4: Advanced combinations with logical operators */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exampleMessageBasedPredicates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example 5: Message-based predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exampleTestingPredicates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example 6: Testing and debugging predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Examples', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'failurepredicatefactory' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CallbackFailurePredicate.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CallbackFailurePredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Predicate that uses a callback function for custom logic */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param callable(Throwable, string): bool $callback */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identifier', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldTrigger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentifier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate from closure */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'messageContains', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that checks exception message */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'substring', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'messageMatches', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that checks exception message with regex */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate based on service name */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetService', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/CompositeFailurePredicate.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\CompositeFailurePredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Composite predicate that combines multiple predicates with logical operators */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operator', 'type' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\LogicalOperator', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldTrigger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentifier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'and', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create AND composite predicate * * @param array $predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'or', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create OR composite predicate * * @param array $predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'not', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create NOT composite predicate * * @param array $predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/ExceptionTypeFailurePredicate.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\ExceptionTypeFailurePredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Predicate that matches specific exception types */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array> $includedExceptions * @param array> $excludedExceptions */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includedExceptions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludedExceptions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeAllByDefault', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldTrigger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentifier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'only', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that only triggers on specific exception types * * @param array> $exceptionTypes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exceptionTypes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'except', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that triggers on all exceptions except specified types * * @param array> $exceptionTypes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exceptionTypes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'all', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that triggers on all exceptions */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'none', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that never triggers */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicate.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for determining if an exception should trigger circuit breaker failure */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldTrigger', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Determine if the exception should trigger a circuit breaker failure */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentifier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get predicate identifier for logging/debugging */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human-readable description */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateBuilder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fluent builder for creating failure predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'includeExceptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Include specific exception types * * @param array> $exceptionTypes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exceptionTypes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'excludeExceptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exclude specific exception types * * @param array> $exceptionTypes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exceptionTypes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'includeStatusCodes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Include specific HTTP status codes * * @param array $statusCodes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statusCodes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'excludeStatusCodes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exclude specific HTTP status codes * * @param array $statusCodes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statusCodes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'includeServerErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Include server errors (5xx) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'includeClientErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Include client errors (4xx) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addPredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add custom predicate */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicate', 'type' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addCallback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add callback predicate */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withOperator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set logical operator for combining predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operator', 'type' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\LogicalOperator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'and', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Use AND operator (default) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'or', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Use OR operator */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'build', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Build the failure predicate */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/FailurePredicateFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory for creating common failure predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forExternalService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for external service calls */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forDatabase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for database operations */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forHttpClient', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for HTTP client operations */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'excludeValidationErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that excludes validation errors */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'criticalErrorsOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for critical errors only */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timeoutErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for timeout-related errors */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'never', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that never triggers (for testing/debugging) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'always', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate that always triggers */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'builder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create custom predicate with fluent builder */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'validationexception' => 'App\\Framework\\Validation\\Exceptions\\ValidationException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicateBuilder', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/HttpStatusFailurePredicate.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\HttpStatusFailurePredicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Predicate that matches HTTP status codes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\FailurePredicate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $includedStatusCodes * @param array $excludedStatusCodes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includedStatusCodes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludedStatusCodes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeServerErrors', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeClientErrors', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldTrigger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentifier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forStatusCodes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for specific status codes * * @param array $statusCodes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statusCodes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'serverErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for server errors (5xx) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clientErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for client errors (4xx) */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allHttpErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate for both client and server errors */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'except', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create predicate excluding specific status codes * * @param array $statusCodes */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statusCodes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/FailurePredicate/LogicalOperator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\FailurePredicate\\LogicalOperator', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logical operators for composite predicates */', 'namespace' => 'App\\Framework\\CircuitBreaker\\FailurePredicate', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'AND', 'value' => '\'and\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OR', 'value' => '\'or\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NOT', 'value' => '\'not\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/HttpClientCircuitBreaker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\HttpClientCircuitBreaker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Circuit Breaker für HTTP Client Anfragen an externe Services */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'httpClient', 'type' => 'App\\Framework\\HttpClient\\HttpClient', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceConfigs', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'request', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt HTTP Request mit Circuit Breaker Schutz aus * * @throws CircuitBreakerException|HttpClientException */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\HttpClient\\ClientRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt GET Request mit Circuit Breaker Schutz aus */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'post', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt POST Request mit Circuit Breaker Schutz aus */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'put', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt PUT Request mit Circuit Breaker Schutz aus */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt DELETE Request mit Circuit Breaker Schutz aus */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\HttpClient\\ClientResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getServicesStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Status aller konfigurierten Services zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'healthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Health Check für einen spezifischen Service */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthCheckUrl', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt Circuit Breaker für einen Service zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt alle Service Circuit Breaker zurück */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withServices', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für spezifische Services */', 'namespace' => 'App\\Framework\\CircuitBreaker', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clientrequest' => 'App\\Framework\\HttpClient\\ClientRequest', 'clientresponse' => 'App\\Framework\\HttpClient\\ClientResponse', 'clienterrorexception' => 'App\\Framework\\HttpClient\\Exception\\ClientErrorException', 'httpclientexception' => 'App\\Framework\\HttpClient\\Exception\\HttpClientException', 'servererrorexception' => 'App\\Framework\\HttpClient\\Exception\\ServerErrorException', 'httpclient' => 'App\\Framework\\HttpClient\\HttpClient', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'httpClient', 'type' => 'App\\Framework\\HttpClient\\HttpClient', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'services', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/CacheBasedServiceRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Registry\\CacheBasedServiceRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache-based implementation of ServiceRegistry */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registryTtl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'discoverServices', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerService', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unregisterService', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isServiceRegistered', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamespaces', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllServices', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearNamespace', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/Registry/ServiceRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\Registry\\ServiceRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for discovering and managing services in circuit breaker namespaces */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'discoverServices', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Discover all services in a given namespace */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Register a service in a namespace */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unregisterService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Unregister a service from a namespace */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isServiceRegistered', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a service is registered in a namespace */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamespaces', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all registered namespaces */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllServices', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all services across all namespaces */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all registered services in a namespace */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all registered services */', 'namespace' => 'App\\Framework\\CircuitBreaker\\Registry', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CircuitBreaker/SlidingWindow/CircuitBreakerSlidingWindow.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CircuitBreaker\\SlidingWindow\\CircuitBreakerSlidingWindow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Circuit Breaker specific sliding window wrapper */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slidingWindow', 'type' => 'App\\Framework\\SlidingWindow\\SlidingWindow', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordSuccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a successful operation */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordFailure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a failed operation */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFailureThresholdExceeded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if failure threshold is exceeded */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFailureRate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current failure rate */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSuccessRate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get success rate */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalRequests', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get total request count in window */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear the sliding window */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlidingWindow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying sliding window */', 'namespace' => 'App\\Framework\\CircuitBreaker\\SlidingWindow', 'uses' => array ( 'circuitbreakerconfig' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerConfig', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'booleanresult' => 'App\\Framework\\SlidingWindow\\Aggregator\\BooleanResult', 'slidingwindow' => 'App\\Framework\\SlidingWindow\\SlidingWindow', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\SlidingWindow\\SlidingWindow', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBus.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandBus', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandBusInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandBusInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'results', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionContext', 'type' => 'App\\Framework\\Context\\ExecutionContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\CommandBus\\CommandBus', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandlerCompiler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeCompiler', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handlers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerDescriptor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandlerDescriptor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kapselt Handler-Information für einen Command */', 'namespace' => 'App\\Framework\\CommandBus', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'method', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHandlerArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handler', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlerMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeMapper', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionTarget', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeInstance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/CommandHandlersCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\CommandHandlersCollection', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'IteratorAggregate', 1 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handlers', 'type' => 'App\\Framework\\CommandBus\\CommandHandlerDescriptor', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param class-string $commandClass * @return CommandHandlerDescriptor|null */', 'namespace' => 'App\\Framework\\CommandBus', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\CommandBus\\CommandHandlerDescriptor', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'all', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/DefaultCommandBus.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\DefaultCommandBus', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CommandBus\\CommandBus', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandHandlers', 'type' => 'App\\Framework\\CommandBus\\CommandHandlersCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionContext', 'type' => 'App\\Framework\\Context\\ExecutionContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queue', 'type' => 'App\\Framework\\Queue\\Queue', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middlewares', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__debugInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Exceptions/NoHandlerFound.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\Exceptions\\NoHandlerFound', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forCommand', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\Middleware', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/DatabaseTransactionMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\Middleware\\DatabaseTransactionMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CommandBus\\Middleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/LoggingMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\Middleware\\LoggingMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CommandBus\\Middleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/Middleware/PerformanceMonitoringMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\Middleware\\PerformanceMonitoringMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\CommandBus\\Middleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/CommandBus/ShouldQueue.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\CommandBus\\ShouldQueue', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_CLASS', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/AppConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\AppConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'environment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'debug', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'App\\Framework\\DateTime\\Timezone', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'locale', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Config\\EnvironmentType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProduction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDevelopment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isStaging', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProductionLike', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDebugEnabled', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ConfigValidator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\ConfigValidator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Lightweight boot-time configuration validator. * * Non-invasive: reports issues via error_log and returns a list of problems * without throwing, so existing environments are not broken inadvertently. */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate selected environment variables and return a list of issues. * Each issue contains: key, issue, severity, recommendation. * @return array> */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateAndReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate and log issues. Returns the list of issues for optional handling. * @return array> */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Console/SecretsCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\Console\\SecretsCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Console commands for secrets management */', 'namespace' => 'App\\Framework\\Config\\Console', 'uses' => array ( 'encryptedenvloader' => 'App\\Framework\\Config\\EncryptedEnvLoader', 'environment' => 'App\\Framework\\Config\\Environment', 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'consoleinput' => 'App\\Framework\\Console\\ConsoleInput', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionFactory', 'type' => 'App\\Framework\\Encryption\\EncryptionFactory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secretManager', 'type' => '?App\\Framework\\Config\\SecretManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateKey', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'secrets:generate-key\'', 1 => '\'Generate a secure encryption key\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encrypt', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'secrets:encrypt\'', 1 => '\'Encrypt a secret value\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decrypt', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'secrets:decrypt\'', 1 => '\'Decrypt a secret value (for debugging)\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'init', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'secrets:init\'', 1 => '\'Initialize .env.secrets file\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'list', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'secrets:list\'', 1 => '\'List all secret keys\'', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'secrets:validate\'', 1 => '\'Validate secrets setup\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/DiscoveryConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\DiscoveryConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'DEFAULT_CHUNK_SIZE', 'value' => '100', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konstanten für Standardwerte */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'DEFAULT_MAX_RETRIES', 'value' => '3', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'DEFAULT_MEMORY_THRESHOLD_HIGH', 'value' => '0.8', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'DEFAULT_MEMORY_THRESHOLD_CRITICAL', 'value' => '0.9', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'DEFAULT_WORKER_COUNT', 'value' => '4', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'DEFAULT_CACHE_TTL', 'value' => '3600', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $attributeMappers * @param array $targetInterfaces */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useCache', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'showProgress', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useContextAwareInitializers', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableCircuitBreaker', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableAdaptiveChunking', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryThresholdHigh', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryThresholdCritical', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableAsyncProcessing', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'workerCount', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableWorkloadBalancing', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logLevel', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'continueOnError', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheTtl', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableChecksumValidation', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableCacheWarming', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromEnvironment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Konfiguration aus Umgebungsvariablen */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Entwicklungskonfiguration mit detailliertem Logging und Robustheit */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Produktionskonfiguration mit optimaler Performance */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lowMemory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration für Umgebungen mit wenig Speicher */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'highPerformance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine Konfiguration für Hochleistungsserver */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EncryptedEnvLoader.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\EncryptedEnvLoader', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enhanced environment loader with encryption support */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionFactory', 'type' => 'App\\Framework\\Encryption\\EncryptionFactory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadEnvironment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Load environment from multiple files with encryption support */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Config\\Environment', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'App\\Framework\\Filesystem\\FilePath|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionKey', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSecretsTemplate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a .env.secrets template file */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Filesystem\\FilePath', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'App\\Framework\\Filesystem\\FilePath|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secretKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encryptSecretsInFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Encrypt secrets in an existing .env file */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keysToEncrypt', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateEncryptionSetup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate encryption setup */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'App\\Framework\\Filesystem\\FilePath|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionKey', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EnvKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Config\\EnvKey', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APP_NAME', 'value' => '\'APP_NAME\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APP_DEBUG', 'value' => '\'APP_DEBUG\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APP_ENV', 'value' => '\'APP_ENV\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APP_KEY', 'value' => '\'APP_KEY\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APP_TIMEZONE', 'value' => '\'APP_TIMEZONE\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APP_LOCALE', 'value' => '\'APP_LOCALE\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ENABLE_CONTEXT_AWARE_INITIALIZERS', 'value' => '\'ENABLE_CONTEXT_AWARE_INITIALIZERS\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_DRIVER', 'value' => '\'DB_DRIVER\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_HOST', 'value' => '\'DB_HOST\'', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_PORT', 'value' => '\'DB_PORT\'', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_DATABASE', 'value' => '\'DB_DATABASE\'', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_USERNAME', 'value' => '\'DB_USERNAME\'', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_PASSWORD', 'value' => '\'DB_PASSWORD\'', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DB_CHARSET', 'value' => '\'DB_CHARSET\'', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHOPIFY_WEBHOOK_SECRET', 'value' => '\'SHOPIFY_WEBHOOK_SECRET\'', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RAPIDMAIL_USERNAME', 'value' => '\'RAPIDMAIL_USERNAME\'', 'phpDoc' => NULL, )), 16 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RAPIDMAIL_PASSWORD', 'value' => '\'RAPIDMAIL_PASSWORD\'', 'phpDoc' => NULL, )), 17 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RAPIDMAIL_TEST_MODE', 'value' => '\'RAPIDMAIL_TEST_MODE\'', 'phpDoc' => NULL, )), 18 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ETAG_ENABLED', 'value' => '\'ETAG_ENABLED\'', 'phpDoc' => NULL, )), 19 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ETAG_PREFER_WEAK', 'value' => '\'ETAG_PREFER_WEAK\'', 'phpDoc' => NULL, )), 20 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ETAG_MIDDLEWARE_ENABLED', 'value' => '\'ETAG_MIDDLEWARE_ENABLED\'', 'phpDoc' => NULL, )), 21 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ETAG_EXCLUDE_PATHS', 'value' => '\'ETAG_EXCLUDE_PATHS\'', 'phpDoc' => NULL, )), 22 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ETAG_EXCLUDE_CONTENT_TYPES', 'value' => '\'ETAG_EXCLUDE_CONTENT_TYPES\'', 'phpDoc' => NULL, )), 23 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REDIS_HOST', 'value' => '\'REDIS_HOST\'', 'phpDoc' => NULL, )), 24 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REDIS_PORT', 'value' => '\'REDIS_PORT\'', 'phpDoc' => NULL, )), 25 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REDIS_PASSWORD', 'value' => '\'REDIS_PASSWORD\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Environment.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\Environment', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $variables */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'backedenum' => 'BackedEnum', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'variables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRequired', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInt', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFloat', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBool', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEnum', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $enumClass */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'backedenum' => 'BackedEnum', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enumClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'BackedEnum', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'all', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'backedenum' => 'BackedEnum', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method für .env file loading */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'backedenum' => 'BackedEnum', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'envPath', 'type' => 'App\\Framework\\Filesystem\\FilePath|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'keyToString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withVariable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Für Tests */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'backedenum' => 'BackedEnum', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withVariables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $variables */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'backedenum' => 'BackedEnum', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'variables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/EnvironmentType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Config\\EnvironmentType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DEV', 'value' => '\'development\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STAGING', 'value' => '\'staging\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROD', 'value' => '\'production\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProduction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDevelopment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isStaging', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDebugEnabled', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProductionLike', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromEnvironment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/Exceptions/RequiredEnvironmentVariableException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string $key */', 'namespace' => 'App\\Framework\\Config\\Exceptions', 'uses' => array ( 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ExternalApiConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\External\\ExternalApiConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'shopify', 'type' => 'App\\Framework\\Config\\External\\ShopifyConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rapidMail', 'type' => 'App\\Framework\\Config\\External\\RapidMailConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromEnvironment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/RapidMailConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\External\\RapidMailConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'testMode', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromEnvironment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/External/ShopifyConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\External\\ShopifyConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromEnvironment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecretManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\SecretManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Secure secrets management using pluggable encryption */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'environment', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryption', 'type' => 'App\\Framework\\Encryption\\EncryptionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serverEnvironment', 'type' => 'App\\Framework\\Http\\ServerEnvironment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSecret', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a secret value, automatically decrypting if necessary */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRequiredSecret', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a required secret, throwing exception if not found */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Config\\EnvKey|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encryptSecret', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Encrypt a secret value for storage */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEncrypted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a value is encrypted */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSecretKeys', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all secret keys (those starting with SECRET_PREFIX) */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rotateSecrets', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rotate encryption for all secrets with new encryption instance */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newEncryption', 'type' => 'App\\Framework\\Encryption\\EncryptionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSecureToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a secure token for API keys, passwords, etc. */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSecurePassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a secure password with mixed character types */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'auditSecretAccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Audit log for secret access (for compliance) */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'maskSecret', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mask sensitive values for logging */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secret', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecureContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the current context is secure (HTTPS) */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSecurityContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get security context information */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateSecretsForContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate that secrets are properly encrypted in non-secure contexts */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'requiredenvironmentvariableexception' => 'App\\Framework\\Config\\Exceptions\\RequiredEnvironmentVariableException', 'securitycontext' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'encryptioninterface' => 'App\\Framework\\Encryption\\EncryptionInterface', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'serverkey' => 'App\\Framework\\Http\\ServerKey', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'useragent' => 'App\\Framework\\UserAgent\\UserAgent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/SecurityConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\SecurityConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Security configuration that adapts to environment */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'appKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableSecurityHeaders', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableCsrfProtection', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableRateLimiting', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimitPerMinute', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimitBurstSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logSecurityEvents', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableStrictMode', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowedHosts', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionLifetime', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secureSessionCookies', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'httpOnlySessionCookies', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forEnvironment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'environment', 'type' => 'App\\Framework\\Config\\EnvironmentType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfigInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\TypedConfigInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Config\\TypedConfiguration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/TypedConfiguration.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\TypedConfiguration', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'database', 'type' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'app', 'type' => 'App\\Framework\\Config\\AppConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'security', 'type' => 'App\\Framework\\Config\\SecurityConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimit', 'type' => 'App\\Framework\\RateLimit\\RateLimitConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'externalApis', 'type' => 'App\\Framework\\Config\\External\\ExternalApiConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discovery', 'type' => 'App\\Framework\\Config\\DiscoveryConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\ValueObjects\\SecurityContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object representing security context information * Used for auditing, logging, and security validation */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHttps', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maskedUserAgent', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serverName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionMethod', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from server environment and encryption context */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHttps', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maskedUserAgent', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serverName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encryptionMethod', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the context is considered secure */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRiskLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get security risk level based on context */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get context summary for logging */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for logging/serialization * @return array */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecretHandlingSafe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if context is suitable for handling secrets */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/ValueObjects/SecurityRiskLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Config\\ValueObjects\\SecurityRiskLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum representing security risk levels */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDisplayName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human-readable name */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresImmediateAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this risk level requires immediate action */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get numeric priority for sorting */', 'namespace' => 'App\\Framework\\Config\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Config/WafConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Config\\WafConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Web Application Firewall Configuration * * Central configuration for all WAF components including DDoS protection, * bot detection, input validation, and layer management. */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'globalTimeout', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'globalTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockingMode', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logDetections', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableDdosProtection', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableBotProtection', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableInputValidation', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableRateLimiting', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxLayersPerRequest', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'globalConfidenceThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trustedIps', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exemptPaths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabledLayers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create production configuration (strict security) */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create development configuration (permissive) */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create testing configuration (minimal protection) */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDdosConfigEnvironment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get DDoS configuration environment type * * Returns a string indicating which DDoSConfig environment to use, * breaking the direct dependency on DDoSConfig class */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDdosConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get DDoS configuration * * @deprecated Use getDdosConfigEnvironment() instead to avoid cyclic dependencies */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DDoS\\DDoSConfig', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefaultLayerConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get default layer configuration */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLayerEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if layer is enabled */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'layerName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isTrustedIp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if IP is trusted */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isExemptPath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if path is exempt */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEnvironmentType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get configuration for environment detection */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withGlobalTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new instance with updated global timeout */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'globalTimeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization * @return array */', 'namespace' => 'App\\Framework\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandList.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\CommandList', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für die Verwaltung von Console Commands * @implements IteratorAggregate */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'IteratorAggregate', 1 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commands', 'type' => 'App\\Framework\\Console\\ConsoleCommand', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'App\\Framework\\Console\\ConsoleCommand', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ConsoleCommand', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findSimilar', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxDistance', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/CommandRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\CommandRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registry für Console Commands mit Discovery Integration */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'reflectionexception' => 'ReflectionException', 'reflectionmethod' => 'ReflectionMethod', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discoveryRegistry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCommandList', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\CommandList', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveredAttribute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $arguments */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'reflectionexception' => 'ReflectionException', 'reflectionmethod' => 'ReflectionMethod', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'arguments', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/InteractiveMenu.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Components\\InteractiveMenu', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Klasse für interaktive Menüs in der Konsole. * Unterstützt sowohl einfache nummerierte Menüs als auch * Menüs mit Pfeiltasten-Navigation. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTitle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Titel des Menüs. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addItem', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Menüpunkt hinzu. * * @param string $label Die Beschriftung des Menüpunkts * @param callable|null $action Eine optionale Aktion, die bei Auswahl ausgeführt wird * @param mixed $value Ein optionaler Wert, der zurückgegeben wird */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => '?callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addSeparator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Separator zum Menü hinzu. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showNumbers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Steuert, ob Nummern angezeigt werden sollen. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'show', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showSimple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt ein einfaches Menü mit Nummern-Auswahl. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showInteractive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt ein interaktives Menü mit Pfeiltasten-Navigation. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consoleoutputinterface' => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/Table.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Components\\Table', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rendert eine Tabelle in der Konsole. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headerStyle', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rowStyle', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'borderStyle', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'showBorders', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setHeaders', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt die Spaltenüberschriften der Tabelle. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addRow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt eine Zeile zur Tabelle hinzu. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'row', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setRows', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt alle Zeilen der Tabelle. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rows', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setPadding', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Innenabstand der Zellen. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'padding', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'render', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rendert die Tabelle und gibt den Text zurück. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TextBox.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Components\\TextBox', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rendert eine Textbox in der Konsole. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'width', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'padding', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'borderStyle', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'contentStyle', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'render', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Components/TreeHelper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Components\\TreeHelper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * TreeHelper zum Anzeigen hierarchischer Baumstrukturen in der Konsole. * Ähnlich dem Symfony TreeHelper, aber angepasst an unser Styling-System. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setNodeStyle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Stil für Knotentitel (Verzeichnisse/Kategorien). */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'style', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setLeafStyle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Stil für Blätter/Endpunkte. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'style', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setLineStyle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Stil für Baumlinien. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'style', 'type' => '?App\\Framework\\Console\\ConsoleStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTitle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Haupttitel des Baums. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addNode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Unterknoten (z.B. Unterverzeichnis) hinzu. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addLeaf', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Endpunkt (z.B. Datei) hinzu. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'display', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt die vollständige Baumstruktur an. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'render', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rendert die Baumstruktur und gibt den Text zurück. */', 'namespace' => 'App\\Framework\\Console\\Components', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consoleformat' => 'App\\Framework\\Console\\ConsoleFormat', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'consolestyle' => 'App\\Framework\\Console\\ConsoleStyle', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Console.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Console', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleApplication.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleApplication', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scriptName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => '?App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleShutdown', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'signal', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'run', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt ein Kommando aus * @param array $argv */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'appconfig' => 'App\\Framework\\Config\\AppConfig', 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', 'commandnotfoundexception' => 'App\\Framework\\Console\\Exceptions\\CommandNotFoundException', 'container' => 'App\\Framework\\DI\\Container', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'argv', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleColor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleColor', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für Konsolen-Farben mit ANSI-Escape-Codes. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RESET', 'value' => '"0"', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLACK', 'value' => '"30"', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RED', 'value' => '"31"', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GREEN', 'value' => '"32"', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'YELLOW', 'value' => '"33"', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLUE', 'value' => '"34"', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MAGENTA', 'value' => '"35"', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CYAN', 'value' => '"36"', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WHITE', 'value' => '"37"', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GRAY', 'value' => '"90"', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_RED', 'value' => '"91"', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_GREEN', 'value' => '"92"', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_YELLOW', 'value' => '"93"', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_BLUE', 'value' => '"94"', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_MAGENTA', 'value' => '"95"', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_CYAN', 'value' => '"96"', 'phpDoc' => NULL, )), 16 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIGHT_WHITE', 'value' => '"97"', 'phpDoc' => NULL, )), 17 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_BLACK', 'value' => '"40"', 'phpDoc' => NULL, )), 18 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_RED', 'value' => '"41"', 'phpDoc' => NULL, )), 19 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_GREEN', 'value' => '"42"', 'phpDoc' => NULL, )), 20 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_YELLOW', 'value' => '"43"', 'phpDoc' => NULL, )), 21 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_BLUE', 'value' => '"44"', 'phpDoc' => NULL, )), 22 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_MAGENTA', 'value' => '"45"', 'phpDoc' => NULL, )), 23 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_CYAN', 'value' => '"46"', 'phpDoc' => NULL, )), 24 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BG_WHITE', 'value' => '"47"', 'phpDoc' => NULL, )), 25 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WHITE_ON_RED', 'value' => '"97;41"', 'phpDoc' => NULL, )), 26 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLACK_ON_YELLOW', 'value' => '"30;43"', 'phpDoc' => NULL, )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnsi', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleCommandMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeMapper', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionTarget', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeInstance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleFormat.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleFormat', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RESET', 'value' => '"0"', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BOLD', 'value' => '"1"', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DIM', 'value' => '"2"', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ITALIC', 'value' => '"3"', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UNDERLINE', 'value' => '"4"', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLINK', 'value' => '"5"', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REVERSE', 'value' => '"7"', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STRIKETHROUGH', 'value' => '"9"', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnsi', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInput.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleInput', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Console\\ConsoleInputInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'arguments', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => '?App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getArgument', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getArguments', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOption', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasOption', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ask', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einer Benutzereingabe. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'askPassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einem Passwort (versteckte Eingabe). */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'confirm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einer Bestätigung (Ja/Nein). */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'choice', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt ein einfaches Auswahlmenü. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'choices', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'menu', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt ein interaktives Menü mit Pfeiltasten-Navigation. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'multiSelect', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ermöglicht die Mehrfachauswahl aus einer Liste von Optionen. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'interactivemenu' => 'App\\Framework\\Console\\Components\\InteractiveMenu', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleInputInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleInputInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getArgument', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt ein Argument an der angegebenen Position zurück */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getArguments', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Argumente zurück */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOption', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine Option zurück */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasOption', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob eine Option vorhanden ist */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Optionen zurück */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ask', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einer Benutzereingabe */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'askPassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einem Passwort (versteckte Eingabe) */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'confirm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einer Bestätigung (Ja/Nein) */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'choice', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt ein einfaches Auswahlmenü */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'choices', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'menu', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt ein interaktives Menü mit Pfeiltasten-Navigation */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'multiSelect', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ermöglicht die Mehrfachauswahl aus einer Liste von Optionen */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutput.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleOutput', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Console\\ConsoleOutputInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'cursor', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Console\\Screen\\Cursor', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'display', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Console\\Screen\\Display', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'screen', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Console\\Screen\\ScreenManager', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'write', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt Text mit optionalem Stil. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'style', 'type' => 'App\\Framework\\Console\\ConsoleStyle|App\\Framework\\Console\\ConsoleColor|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeRaw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt rohe ANSI-Sequenzen ohne Verarbeitung. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'raw', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeWindowTitle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Fenstertitel. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mode', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeLine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Zeile mit optionalem Stil. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => 'App\\Framework\\Console\\ConsoleStyle|App\\Framework\\Console\\ConsoleColor|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeSuccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Erfolgsmeldung. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Fehlermeldung. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeWarning', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Warnmeldung. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Infomeldung. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newLine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt eine oder mehrere Leerzeilen ein. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'askQuestion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt eine Frage und gibt die Antwort zurück. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'confirm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt eine Ja/Nein-Frage. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isTerminal', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob der Output zu einem Terminal geht. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( 'cursor' => 'App\\Framework\\Console\\Screen\\Cursor', 'display' => 'App\\Framework\\Console\\Screen\\Display', 'screenmanager' => 'App\\Framework\\Console\\Screen\\ScreenManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleOutputInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für ConsoleOutput-Klassen. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'write', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt Text in die Konsole */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'style', 'type' => 'null|App\\Framework\\Console\\ConsoleColor|App\\Framework\\Console\\ConsoleStyle|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeLine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt Text mit Zeilenumbruch in die Konsole */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => '?App\\Framework\\Console\\ConsoleColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeSuccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Erfolgsmeldung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Fehlermeldung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeWarning', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Warnmeldung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schreibt eine Informationsmeldung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newLine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt leere Zeilen hinzu */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'askQuestion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt eine Frage und wartet auf Benutzereingabe */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'confirm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fragt nach einer Bestätigung (ja/nein) */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'question', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'writeWindowTitle', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Fenstertitel des Terminals */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'title', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mode', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ConsoleStyle.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleStyle', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => '?App\\Framework\\Console\\ConsoleColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?App\\Framework\\Console\\ConsoleFormat', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'background', 'type' => '?App\\Framework\\Console\\ConsoleColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen Style mit den gewünschten Eigenschaften. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => '?App\\Framework\\Console\\ConsoleColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?App\\Framework\\Console\\ConsoleFormat', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'backgroundColor', 'type' => '?App\\Framework\\Console\\ConsoleColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toAnsi', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'apply', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wendet den Style auf einen Text an. */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'text', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'success', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'error', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'warning', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'info', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'highlight', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dim', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\DemoCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hello', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:hello\'', 1 => '\'Zeigt eine einfache Hallo-Welt-Nachricht\'', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'colors', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:colors\'', 1 => '\'Zeigt alle verfügbaren Farben\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'interactive', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:interactive\'', 1 => '\'Interaktive Demo mit Benutzereingaben\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'menu', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:menu\'', 1 => '\'Zeigt ein interaktives Menü\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'simpleMenu', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:simple-menu\'', 1 => '\'Zeigt ein einfaches Nummern-Menü\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'wizard', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:wizard\'', 1 => '\'Zeigt einen Setup-Wizard\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/DemoCommand/ScreenDemoCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\DemoCommand\\ScreenDemoCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:screen\'', 1 => '\'Zeigt die verschiedenen Screen-Management-Funktionen\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/ProgressBarExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Examples\\ProgressBarExample', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showProgressBarDemo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'demo:progressbar\'', 'description' => '\'Zeigt eine Demonstration der Fortschrittsanzeige\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/SpinnerExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Examples\\SpinnerExample', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showSpinnerDemo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'demo:spinner\'', 'description' => '\'Zeigt eine Demonstration der Spinner-Komponente\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TableExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Examples\\TableExample', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showTable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:table\'', 1 => '\'Zeigt eine Beispiel-Tabelle\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TextBoxExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Examples\\TextBoxExample', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showTextBox', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:textbox\'', 1 => '\'Zeigt verschiedene TextBox-Beispiele\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Examples/TreeExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Examples\\TreeExample', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showTreeExample', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'demo:tree\'', 1 => '\'Zeigt ein Beispiel für die TreeHelper-Komponente\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/CommandNotFoundException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Exceptions\\CommandNotFoundException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Console\\Exceptions\\ConsoleException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'commandName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Exceptions/ConsoleException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Exceptions\\ConsoleException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ExitCode.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ExitCode', 'scalarType' => 'int', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Standard Exit-Codes für Console-Anwendungen * * Basiert auf den POSIX-Standards und bewährten Praktiken: * - 0: Erfolg * - 1: Allgemeiner Fehler * - 2: Falsche Verwendung (ungültige Argumente) * - 64-78: Spezifische Fehler-Codes (sysexits.h Standard) */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SUCCESS', 'value' => '0', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GENERAL_ERROR', 'value' => '1', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'USAGE_ERROR', 'value' => '2', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COMMAND_NOT_FOUND', 'value' => '64', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INVALID_INPUT', 'value' => '65', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NO_INPUT', 'value' => '66', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UNAVAILABLE', 'value' => '69', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SOFTWARE_ERROR', 'value' => '70', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OS_ERROR', 'value' => '71', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OS_FILE_ERROR', 'value' => '72', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CANT_CREATE', 'value' => '73', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'IO_ERROR', 'value' => '74', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TEMP_FAIL', 'value' => '75', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROTOCOL_ERROR', 'value' => '76', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NO_PERMISSION', 'value' => '77', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONFIG_ERROR', 'value' => '78', 'phpDoc' => NULL, )), 16 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PERMISSION_DENIED', 'value' => '126', 'phpDoc' => NULL, )), 17 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INTERRUPTED', 'value' => '130', 'phpDoc' => NULL, )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine menschenlesbare Beschreibung des Exit-Codes zurück */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSuccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob der Exit-Code einen Erfolg darstellt */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob der Exit-Code einen Fehler darstellt */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/ProgressBar.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ProgressBar', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'total', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'width', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt das Format der Fortschrittsanzeige * Verfügbare Platzhalter: * - %bar%: Die Fortschrittsanzeige * - %current%: Aktueller Fortschritt * - %total%: Gesamtwert * - %percent%: Prozentsatz des Fortschritts * - %elapsed%: Verstrichene Zeit in Sekunden * - %remaining%: Geschätzte verbleibende Zeit in Sekunden */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setBarCharacters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt die Zeichen für die Fortschrittsanzeige */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'barChar', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emptyBarChar', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'progressChar', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setRedrawFrequency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt die Häufigkeit der Aktualisierung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'frequency', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'advance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erhöht den Fortschritt um den angegebenen Schritt */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'step', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setCurrent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den aktuellen Fortschritt */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'current', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'start', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet die Fortschrittsanzeige */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'finish', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beendet die Fortschrittsanzeige */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ClearStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\ClearStrategy', 'scalarType' => NULL, 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Strategien für das Löschen des Bildschirms. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NEVER', 'value' => NULL, 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ALWAYS', 'value' => NULL, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ON_NEW_SCREEN', 'value' => NULL, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SMART', 'value' => NULL, 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Cursor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\Cursor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verantwortlich für Cursor-Positionierung. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'moveTo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt den Cursor zu einer bestimmten Position. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'row', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'col', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'home', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt den Cursor zum Anfang (Home-Position). */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt den Cursor um X Zeilen nach oben. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lines', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt den Cursor um X Zeilen nach unten. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lines', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'left', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt den Cursor um X Spalten nach links. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'right', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt den Cursor um X Spalten nach rechts. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hide', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Versteckt den Cursor. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'show', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt den Cursor wieder an. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert die aktuelle Cursorposition. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'restore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt die zuvor gespeicherte Cursorposition wieder her. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/CursorControlCode.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\CursorControlCode', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cursor-Steuerungscodes nach ANSI-Standard. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UP', 'value' => '"A"', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DOWN', 'value' => '"B"', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RIGHT', 'value' => '"C"', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LEFT', 'value' => '"D"', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NEXT_LINE', 'value' => '"E"', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PREV_LINE', 'value' => '"F"', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COLUMN', 'value' => '"G"', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'POSITION', 'value' => '"H"', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIDE', 'value' => '"?25l"', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHOW', 'value' => '"?25h"', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SAVE', 'value' => '"s"', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RESTORE', 'value' => '"u"', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert den ANSI-Steuerungscode korrekt. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'int', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/Display.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\Display', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verantwortlich für Bildschirm-Management (Löschen, etc.) */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht den gesamten Bildschirm und setzt den Cursor an den Anfang. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearLine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht die aktuelle Zeile. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearToEnd', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht vom Cursor bis zum Ende des Bildschirms. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearToBeginning', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht vom Cursor bis zum Anfang des Bildschirms. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearLineToEnd', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht vom Cursor bis zum Ende der Zeile. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearLineToBeginning', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht vom Cursor bis zum Anfang der Zeile. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'useAlternateBuffer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktiviert den alternativen Buffer (für Vollbild-Anwendungen). */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'useMainBuffer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kehrt zum Hauptbuffer zurück. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenControlCode.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\ScreenControlCode', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bildschirm-Steuerungscodes nach ANSI-Standard. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAR_ALL', 'value' => '"2J"', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAR_ABOVE', 'value' => '"1J"', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAR_BELOW', 'value' => '"0J"', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAR_LINE', 'value' => '"2K"', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAR_LINE_LEFT', 'value' => '"1K"', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAR_LINE_RIGHT', 'value' => '"0K"', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SCROLL_UP', 'value' => '"S"', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SCROLL_DOWN', 'value' => '"T"', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SAVE_SCREEN', 'value' => '"?47h"', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RESTORE_SCREEN', 'value' => '"?47l"', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ALTERNATE_BUFFER', 'value' => '"?1049h"', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MAIN_BUFFER', 'value' => '"?1049l"', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert den ANSI-Steuerungscode korrekt. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'int', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\ScreenManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verwaltet intelligentes Bildschirm-Management. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt die Löschstrategie. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Console\\Screen\\ClearStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setInteractiveMode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktiviert/deaktiviert den interaktiven Modus. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interactive', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'new', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Markiert den Beginn eines neuen Bildschirms. * Diese Methode rufst du VOR der Ausgabe auf. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Console\\Screen\\ScreenType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newMenu', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convenience-Methoden für häufige Screen-Typen. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newDialog', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newContent', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newLog', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newProgress', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'temporary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt eine temporäre Nachricht für eine bestimmte Zeit an. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'waitForInput', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wartet auf Benutzereingabe. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Screen/ScreenType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Screen\\ScreenType', 'scalarType' => NULL, 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Typen von Bildschirminhalten. */', 'namespace' => 'App\\Framework\\Console\\Screen', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MENU', 'value' => NULL, 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DIALOG', 'value' => NULL, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONTENT', 'value' => NULL, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOG', 'value' => NULL, 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROGRESS', 'value' => NULL, 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INFO', 'value' => NULL, 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/Spinner.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Console\\Spinner', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'style', 'type' => 'App\\Framework\\Console\\SpinnerStyle', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'start', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Startet den Spinner */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Spinner mit einer Erfolgs-, Fehler- oder neutralen Nachricht */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => '?App\\Framework\\Console\\ConsoleColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'success', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Spinner mit einer Erfolgsmeldung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'error', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stoppt den Spinner mit einer Fehlermeldung */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setMessage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ändert die Nachricht des Spinners während er läuft */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'update', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktualisiert die Anzeige des Spinners */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beendet den Spinner ohne Ausgabe */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Console/SpinnerStyle.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Console\\SpinnerStyle', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DOTS', 'value' => '\'dots\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LINE', 'value' => '\'line\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BOUNCE', 'value' => '\'bounce\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ARROW', 'value' => '\'arrow\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFrames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Frames für den gewählten Stil zurück */', 'namespace' => 'App\\Framework\\Console', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Context/ContextType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Context\\ContextType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WEB', 'value' => '\'web\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONSOLE', 'value' => '\'console\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WORKER', 'value' => '\'worker\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLI_SCRIPT', 'value' => '\'cli-script\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TEST', 'value' => '\'test\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Context/ExecutionContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Context\\ExecutionContext', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Context\\ContextType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Context\\ContextType', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWeb', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWorker', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isConsole', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCli', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isTest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Context', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'envkey' => 'App\\Framework\\Config\\EnvKey', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detect', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'environment', 'type' => '?App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forWorker', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forTest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forConsole', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forWeb', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AppBootstrapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\AppBootstrapper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verantwortlich für die grundlegende Initialisierung der Anwendung */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'encryptedenvloader' => 'App\\Framework\\Config\\EncryptedEnvLoader', 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'typedconfiginitializer' => 'App\\Framework\\Config\\TypedConfigInitializer', 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'consoleapplication' => 'App\\Framework\\Console\\ConsoleApplication', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventdispatcherinterface' => 'App\\Framework\\Core\\Events\\EventDispatcherInterface', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'encryptionfactory' => 'App\\Framework\\Encryption\\EncryptionFactory', 'clierrorhandler' => 'App\\Framework\\ErrorHandling\\CliErrorHandler', 'errorhandler' => 'App\\Framework\\ErrorHandling\\ErrorHandler', 'middlewaremanager' => 'App\\Framework\\Http\\MiddlewareManager', 'middlewaremanagerinterface' => 'App\\Framework\\Http\\MiddlewareManagerInterface', 'responseemitter' => 'App\\Framework\\Http\\ResponseEmitter', 'serverenvironment' => 'App\\Framework\\Http\\ServerEnvironment', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => 'App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bootstrapWeb', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ApplicationInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bootstrapConsole', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ConsoleApplication', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bootstrapWorker', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DI\\Container', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bootstrapWebSocket', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DI\\Container', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Application.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Application', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\ApplicationInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseEmitter', 'type' => 'App\\Framework\\Http\\ResponseEmitter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Config\\TypedConfiguration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middlewareManager', 'type' => '?App\\Framework\\Http\\MiddlewareManagerInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcherInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => '?App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'run', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt die Anwendung aus */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'afteremitresponse' => 'App\\Framework\\Core\\Events\\AfterEmitResponse', 'afterhandlerequest' => 'App\\Framework\\Core\\Events\\AfterHandleRequest', 'applicationbooted' => 'App\\Framework\\Core\\Events\\ApplicationBooted', 'beforeemitresponse' => 'App\\Framework\\Core\\Events\\BeforeEmitResponse', 'beforehandlerequest' => 'App\\Framework\\Core\\Events\\BeforeHandleRequest', 'eventdispatcherinterface' => 'App\\Framework\\Core\\Events\\EventDispatcherInterface', 'container' => 'App\\Framework\\DI\\Container', 'middlewaremanagerinterface' => 'App\\Framework\\Http\\MiddlewareManagerInterface', 'request' => 'App\\Framework\\Http\\Request', 'response' => 'App\\Framework\\Http\\Response', 'responseemitter' => 'App\\Framework\\Http\\ResponseEmitter', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'httprouter' => 'App\\Framework\\Router\\HttpRouter', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ApplicationInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ApplicationInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'run', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Core\\AttributeCompiler', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Attributklasse zurück, für die dieser Compiler zuständig ist */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kompiliert die gemappten Attributdaten in eine optimierte Form */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Core\\AttributeMapper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für AttributeMapper mit Framework Reflection Module */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Attributklasse zurück, die dieser Mapper verarbeiten kann */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Maps attributes using Framework Reflection Module * @param WrappedReflectionClass|WrappedReflectionMethod $reflectionTarget * @param object $attributeInstance * @return array|null */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionTarget', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeInstance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMapperLocator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\AttributeMapperLocator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'locateMappers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Klassen, die das AttributeMapper-Interface implementieren * * @param string $directory Das Basisverzeichnis, in dem gesucht werden soll * @return AttributeMapper[] Array von AttributeMapper-Instanzen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeMappingVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\AttributeMappingVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Visitor zum Verarbeiten von Attributen in Klassen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\FileVisitor', 1 => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $attributeMappers Array von AttributeMapper-Instanzen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanStart', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanStart', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanComplete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClassWithReflection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflection', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanComplete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadFromCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheKey', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheableData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addAttributeMapper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen weiteren AttributeMapper hinzu */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mapper', 'type' => 'App\\Framework\\Core\\AttributeMapper', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributesOfType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Attribute eines bestimmten Typs zurück */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllMappedAttributes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle gemappten Attribute zurück */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProcessingStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Verarbeitungsstatistiken zurück */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/AttributeProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\AttributeProcessor', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param AttributeMapper[] $mappers */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'reflectionclass' => 'ReflectionClass', 'reflectionmethod' => 'ReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet alle Attribute einer Klasse */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'reflectionclass' => 'ReflectionClass', 'reflectionmethod' => 'ReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'refClass', 'type' => 'ReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'results', 'type' => 'array', 'byRef' => true, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ClassParser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ClassParser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parser für PHP-Klassendateien ohne externe Abhängigkeiten */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassesInFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Klassen, Interfaces und Traits in einer Datei zurück * * @param string $file Pfad zur PHP-Datei * @return array Namen der in der Datei enthaltenen Klassen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Leert den internen Cache */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassNameFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert den Klassennamen (mit Namespace) aus einer PHP-Datei */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ContainerBootstrapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ContainerBootstrapper', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bootstrap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bootstrap container with intelligent compilation strategy */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheinitializer' => 'App\\Framework\\Cache\\CacheInitializer', 'clock' => 'App\\Framework\\DateTime\\Clock', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'discoveryservicebootstrapper' => 'App\\Framework\\Discovery\\DiscoveryServiceBootstrapper', 'responseemitter' => 'App\\Framework\\Http\\ResponseEmitter', 'defaultlogger' => 'App\\Framework\\Logging\\DefaultLogger', 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DI\\Container', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/DynamicRoute.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\DynamicRoute', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\Route', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'regex', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paramNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'controller', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paramValues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameterCollection', 'type' => '?App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameterCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get type-safe parameter collection (preferred) */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'parametercollection' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Alphabet.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base32 Alphabet Enum * * Defines different Base32 alphabets for various use cases: * - RFC3548: Standard Base32 alphabet for TOTP and general use * - CROCKFORD: Crockford\'s Base32 for ULIDs and human-readable IDs */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RFC3548', 'value' => '\'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CROCKFORD', 'value' => '\'0123456789ABCDEFGHJKMNPQRSTVWXYZ\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlphabet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the alphabet string */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'usesPadding', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this alphabet uses padding */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCharacterCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the character count (always 32 for Base32) */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'containsCharacter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate if a character exists in this alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'char', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCharacterIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the index of a character in the alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'char', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCharacterAt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get character at specific index */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidEncoded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate an encoded string against this alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUseCases', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended use cases for this alphabet * @return array */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get description of this alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateRandom', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a random string using this alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Encoding/Base32Encoder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Encoding\\Base32Encoder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Multi-Standard Base32 Encoder/Decoder * * Provides Base32 encoding and decoding functionality supporting multiple standards: * - RFC 3548 (standard): Used for TOTP secrets and general applications * - Crockford\'s Base32: Used for ULIDs and human-readable identifiers */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Encode binary data to Base32 string using RFC 3548 alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encodeCrockford', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Encode binary data using Crockford\'s Base32 alphabet (for ULID) */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encodeWithAlphabet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Encode binary data to Base32 string with specified alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alphabet', 'type' => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Decode Base32 string to binary data using RFC 3548 alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decodeCrockford', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Decode Crockford\'s Base32 string to binary data */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decodeWithAlphabet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Decode Base32 string to binary data with specified alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alphabet', 'type' => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidBase32', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate Base32 string format using RFC 3548 alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidWithAlphabet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate Base32 string format with specified alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alphabet', 'type' => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateRandom', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a random Base32 string using RFC 3548 alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateRandomWithAlphabet', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a random Base32 string with specified alphabet */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alphabet', 'type' => 'App\\Framework\\Core\\Encoding\\Base32Alphabet', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatForDisplay', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Format Base32 string with spaces for readability */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'groupSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'removeFormatting', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove formatting from Base32 string */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatted', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAvailableAlphabets', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get available alphabets * @return array */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDecodedLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate the decoded length for a given encoded length */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encoded', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEncodedLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate the encoded length for a given binary data length */', 'namespace' => 'App\\Framework\\Core\\Encoding', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/AfterEmitResponse.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\AfterEmitResponse', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/AfterHandleRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\AfterHandleRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ApplicationBooted.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\ApplicationBooted', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bootTime', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'environment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurredAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/BeforeEmitResponse.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\BeforeEmitResponse', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/BeforeHandleRequest.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\BeforeHandleRequest', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/ErrorOccurred.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\ErrorOccurred', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestId', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurredAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventCompilerPass.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\EventCompilerPass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt abschließende Konfigurationen für das Event-System durch */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Richtet zusätzliche Event-Konfigurationen ein * * @param DefaultContainer $container Der DI-Container * @param EventDispatcher $dispatcher Der EventDispatcher */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcher.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Der EventDispatcher ist verantwortlich für die Verarbeitung von Events * und das Aufrufen der entsprechenden Event-Handler */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\Events\\EventDispatcherInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param DefaultContainer $container Der DI-Container * @param array|null $eventHandlers Array mit Event-Handlern aus der Autodiscovery */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventHandlers', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatcht ein Event an alle registrierten Handler * * @param object $event Das zu dispatchende Event-Objekt * @return array Ergebnisse der Event-Handler */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addHandler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registriert einen Event-Handler manuell * * @param string $eventClass Vollqualifizierter Klassenname des Events * @param callable $handler Der Handler, der aufgerufen werden soll * @param int|null $priority Priorität des Handlers (höhere Werte werden zuerst ausgeführt) * @param bool $stopPropagation Gibt an, ob die Event-Propagation nach diesem Handler gestoppt werden soll * @return self */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handler', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stopPropagation', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listen', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Alias für addHandler - für bessere API Kompatibilität */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'handler', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stopPropagation', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasHandlersFor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob Handler für den angegebenen Event-Typ registriert sind * * @param string $eventClass Event-Klasse * @return bool True, wenn Handler existieren */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\EventDispatcherInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'results', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventDispatcherInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\EventDispatcherInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für Event Dispatcher */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatcht ein Event an alle registrierten Handler */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\EventHandlerCompiler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compiler für Event-Handler */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributecompiler' => 'App\\Framework\\Core\\AttributeCompiler', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeCompiler', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Attributklasse zurück, die dieser Compiler verarbeitet */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributecompiler' => 'App\\Framework\\Core\\AttributeCompiler', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kompiliert die Event-Handler * * @param array $attributeData Array mit Attributdaten aus dem Mapper * @return array Kompilierte Event-Handler */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributecompiler' => 'App\\Framework\\Core\\AttributeCompiler', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/EventHandlerMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mapper für das OnEvent-Attribut */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeMapper', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Attributklasse zurück, die dieser Mapper verarbeitet */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Implementiert die map-Methode aus dem AttributeMapper-Interface */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionTarget', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeInstance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet ein Event-Handler-Attribut * * @param array $attributeData Array mit Attributdaten aus der Discovery * @return array Verarbeitete Attributdaten */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/OnEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Attribut, das eine Methode als Event-Handler kennzeichnet. * * Beispiel: * #[OnEvent] * public function handleUserRegistered(UserRegistered $event): void { ... } */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param int|null $priority Priorität des Handlers (höhere Werte werden zuerst ausgeführt) * @param bool $stopPropagation Gibt an, ob die Event-Propagation nach diesem Handler gestoppt werden soll */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stopPropagation', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Events/UserRegistered.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\UserRegistered', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event, das nach der Registrierung eines Benutzers ausgelöst wird */', 'namespace' => 'App\\Framework\\Core\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registeredAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurredAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/InvalidRouteCacheFormatException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Exceptions\\InvalidRouteCacheFormatException', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheFile', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Exceptions/RouteCacheException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Exceptions\\RouteCacheException', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheFile', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationLocator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\InterfaceImplementationLocator', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'locate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Klassen, die ein bestimmtes Interface implementieren * * @param string $directory Das Basisverzeichnis, in dem gesucht werden soll * @param string $interfaceName Der vollständige Name des Interfaces (mit Namespace) * @param bool $instantiate Gibt an, ob die gefundenen Klassen instanziiert werden sollen * @return array Array von Instanzen oder Klassennamen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'recursivedirectoryiterator' => 'RecursiveDirectoryIterator', 'recursiveiteratoriterator' => 'RecursiveIteratorIterator', 'reflectionclass' => 'ReflectionClass', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interfaceName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instantiate', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/InterfaceImplementationVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\InterfaceImplementationVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Visitor zum Auffinden von Interface-Implementierungen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\FileVisitor', 1 => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $targetInterfaces Die zu suchenden Interfaces */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanStart', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanStart', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanComplete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClassWithReflection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflection', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanComplete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadFromCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheKey', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheableData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getImplementations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Implementierungen eines Interfaces zurück * @return array */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'doesImplement', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob eine Klasse ein bestimmtes Interface implementiert */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassInterfaces', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Interfaces zurück, die eine Klasse implementiert * @return array */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllImplementations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle gefundenen Implementierungen zurück * @return array> */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filevisitor' => 'App\\Framework\\Discovery\\FileVisitor', 'reflectionawarevisitor' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PathProvider.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\PathProvider', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimierter PathProvider mit Caching */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBasePath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Basispfad des Projekts zurück */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolvePath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löst einen relativen Pfad zum Basispfad auf */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relativePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'pathExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob ein Pfad im Projektverzeichnis existiert */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relativePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'namespaceToPath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert einen Namespace in einen relativen Pfad */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'pathToNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert einen Pfad in einen Namespace */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCachePath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Pfad zum Cache-Verzeichnis zurück */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSourcePath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Pfad zum Quellverzeichnis zurück */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceMonitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Performance\\ContainerPerformanceMonitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Container Performance Monitor * * Monitors container bootstrap performance and provides optimization insights. * Helps identify bottlenecks in dependency injection and service initialization. */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customThresholds', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'startOperation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Start monitoring a container operation */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'endOperation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * End monitoring and analyze performance */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\Performance\\ContainerPerformanceResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'monitorBinding', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Monitor container binding performance */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bindingFunction', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance recommendations based on collected metrics * @return array */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generatePerformanceReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a performance report for debugging * @return array */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( 'logger' => 'App\\Framework\\Logging\\Logger', 'performancecollectorinterface' => 'App\\Framework\\Performance\\Contracts\\PerformanceCollectorInterface', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Performance/ContainerPerformanceResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Performance\\ContainerPerformanceResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Container Performance Result Value Object */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isWithinThreshold', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Core\\Performance', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/PhpObjectExporter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\PhpObjectExporter', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'export', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Eigene Export-Funktion, die rekursiv ein PHP-Array mit echten Konstruktoraufrufen exportiert. * (Variante unten für Standardfälle ausreichend! Für verschachtelte/nicht-indizierte Arrays ggf. anpassen.) */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ProgressMeter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ProgressMeter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Einfacher Progressmeter für Konsolenanwendungen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param int $total Gesamtanzahl der zu verarbeitenden Elemente * @param int $width Breite der Fortschrittsanzeige * @param string $format Format der Anzeige: \'bar\' für Balken, \'percent\' für Prozent, \'both\' für beides */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'total', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'width', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'advance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erhöht den Fortschritt um einen oder mehrere Schritte */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'step', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'finish', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Markiert den Fortschritt als abgeschlossen */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setProgress', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt den Fortschritt auf einen bestimmten Wert */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'current', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Route.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Route', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'controller', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'action', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'parameters', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'path', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'attributes', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameterCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get type-safe parameter collection (preferred over legacy $parameters array) */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'parametercollection' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\RouteCache', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheFile', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'load', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFresh', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedMTime', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\RouteCompiler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compile routes directly from DiscoveredAttribute objects with subdomain support * @return array, dynamic: array}>> */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'compiledpattern' => 'App\\Framework\\Router\\CompiledPattern', 'compiledroutes' => 'App\\Framework\\Router\\CompiledRoutes', 'routedata' => 'App\\Framework\\Router\\RouteData', 'methodparameter' => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', 'parametercollection' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'subdomainpattern' => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discoveredRoutes', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compileNamedRoutes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $routes * @return array */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'compiledpattern' => 'App\\Framework\\Router\\CompiledPattern', 'compiledroutes' => 'App\\Framework\\Router\\CompiledRoutes', 'routedata' => 'App\\Framework\\Router\\RouteData', 'methodparameter' => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', 'parametercollection' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'subdomainpattern' => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compileOptimized', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compile optimized routes directly from DiscoveredAttribute objects with subdomain support */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'compiledpattern' => 'App\\Framework\\Router\\CompiledPattern', 'compiledroutes' => 'App\\Framework\\Router\\CompiledRoutes', 'routedata' => 'App\\Framework\\Router\\RouteData', 'methodparameter' => 'App\\Framework\\Router\\ValueObjects\\MethodParameter', 'parametercollection' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'subdomainpattern' => 'App\\Framework\\Router\\ValueObjects\\SubdomainPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\CompiledRoutes', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discoveredRoutes', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/RouteMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\RouteMapper', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeMapper', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionTarget', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeInstance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/StaticRoute.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\StaticRoute', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\Route', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'controller', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameterCollection', 'type' => '?App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameterCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get type-safe parameter collection (preferred) */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( 'parametercollection' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Router\\ValueObjects\\ParameterCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Byte.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bytes', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromBytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bytes', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromUnit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unit', 'type' => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromKilobytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'kilobytes', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromMegabytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'megabytes', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromGigabytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'gigabytes', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromTerabytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'terabytes', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toBytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toUnit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unit', 'type' => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toKilobytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toMegabytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toGigabytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toTerabytes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toHumanReadable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBestUnit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'subtract', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'multiply', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'factor', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'divide', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'divisor', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'greaterThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lessThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNotEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'percentOf', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'total', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'zero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'oneKilobyte', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'oneMegabyte', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'oneGigabyte', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ByteUnit.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\ByteUnit', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BYTE', 'value' => '\'B\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'KILOBYTE', 'value' => '\'KB\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEGABYTE', 'value' => '\'MB\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GIGABYTE', 'value' => '\'GB\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TERABYTE', 'value' => '\'TB\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMultiplier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bestUnitFor', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bytes', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unit', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ClassName.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Immutable class name value object with namespace support */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from string */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromObject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from object */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFullyQualified', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a fully qualified class name * @return class-string */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a namespace part */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getShortName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a short class name (without a namespace) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWithLeadingSlash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get class name with leading backslash */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if class exists */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'implementsInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if class implements interface */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extends', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if class extends another class */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parentClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inSameNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if in same namespace */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if in namespace (or sub-namespace) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParentNamespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parent namespace */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamespaceParts', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all namespace parts * @return array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matches', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if class name matches pattern */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation (short name for readability) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Explicit toString method */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDebugString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get string representation for debugging */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compare for equality */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Coordinates.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Coordinates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Geographic coordinates value object (latitude/longitude) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latitude', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'longitude', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromLatLng', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from latitude and longitude */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'latitude', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'longitude', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from decimal degrees string */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'coordinates', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'berlin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create coordinates for Berlin, Germany */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newYork', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create coordinates for New York, USA */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'london', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create coordinates for London, UK */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'distanceTo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate distance to another coordinate in kilometers */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWithinRadius', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if coordinates are within a certain radius of another point */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'center', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'radiusKm', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHemisphere', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hemisphere information */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNorthern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if coordinates are in the northern hemisphere */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSouthern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if coordinates are in the southern hemisphere */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEastern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if coordinates are in the eastern hemisphere */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWestern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if coordinates are in the western hemisphere */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get formatted coordinates as string */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCardinalString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get formatted coordinates with cardinal directions */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/CountryCode.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * ISO 3166-1 alpha-2 country code value object */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from string */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'germany', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create for Germany */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unitedStates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create for United States */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCountryName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get country name if known */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEuropeanUnion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a European Union country */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHighRiskCountry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a high-risk country for security */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBotFarmCountry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this country is known for bot farms or compromised infrastructure */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAnonymous', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an anonymous or unknown country code */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getContinent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get continent */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Duration.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromNanoseconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create Duration directly from nanoseconds for maximum precision */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'nanoseconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromSeconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromUnit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unit', 'type' => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromMilliseconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'milliseconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromMicroseconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'microseconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromMinutes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minutes', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHours', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hours', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDays', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'days', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'between', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSeconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toNanoseconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toUnit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unit', 'type' => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toMilliseconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toMicroseconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toMinutes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toHours', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toHumanReadable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'subtract', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'multiply', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'factor', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'greaterThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lessThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isZero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNotZero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCacheSeconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toTimeoutSeconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'zero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'oneSecond', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'oneMinute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'oneHour', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/EmailAddress.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLocalPart', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDomain', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDisposable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCommonProvider', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCorporate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'normalize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'obfuscate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameDomain', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/GrowthRate.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents growth rates that can exceed 100% (e.g., memory growth, performance metrics) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'percentage', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDecimal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'decimal', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromRatio', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'current', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'original', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromMemoryValues', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentBytes', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'originalBytes', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDecimal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toMultiplier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatWithSign', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'greaterThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lessThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPositiveGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNegativeGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNoGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isModerateMemoryGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHighMemoryGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCriticalMemoryGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isExtremeMemoryGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSignificantGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getGrowthLevel', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'subtract', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'multiply', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'factor', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'divide', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'divisor', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clampToPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'zero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'doubleGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tripleGrowth', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Hash.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromFile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'md5', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sha1', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sha256', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sha512', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verifyFile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toPrefixedString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toShort', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/HashAlgorithm.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\HashAlgorithm', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MD5', 'value' => '\'md5\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHA1', 'value' => '\'sha1\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHA256', 'value' => '\'sha256\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHA512', 'value' => '\'sha512\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHA3_256', 'value' => '\'sha3-256\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHA3_512', 'value' => '\'sha3-512\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'XXHASH64', 'value' => '\'xxh64\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLength', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAvailable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'secure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fast', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/MethodName.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value object for PHP method names with validation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMagicMethod', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isConstructor', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isInvokable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Percentage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'percentage', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDecimal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'decimal', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromRatio', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'part', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'total', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDecimal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'greaterThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lessThan', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAbove', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBelow', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCritical', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isZero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFull', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'zero', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'full', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Port.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Port', 'scalarType' => 'int', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HTTP', 'value' => '80', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HTTPS', 'value' => '443', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FTP', 'value' => '21', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SSH', 'value' => '22', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SMTP', 'value' => '25', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DNS', 'value' => '53', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DHCP', 'value' => '67', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'POP3', 'value' => '110', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'IMAP', 'value' => '143', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SNMP', 'value' => '161', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LDAP', 'value' => '389', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SMTPS', 'value' => '465', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'IMAPS', 'value' => '993', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'POP3S', 'value' => '995', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MYSQL', 'value' => '3306', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'POSTGRESQL', 'value' => '5432', 'phpDoc' => NULL, )), 16 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REDIS', 'value' => '6379', 'phpDoc' => NULL, )), 17 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MONGODB', 'value' => '27017', 'phpDoc' => NULL, )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forScheme', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => '?self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scheme', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScheme', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWellKnown', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidPort', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'port', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Score.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Score', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a normalized score value between 0.0 and 1.0 */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'min', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'max', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromPercentage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create score from percentage */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'percentage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromRatio', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create score from ratio */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'numerator', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'denominator', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'critical', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create critical level score (0.9) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'high', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create high level score (0.7) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'medium', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create medium level score (0.5) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'low', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create low level score (0.2) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'zero', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create minimum score (0.0) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'max', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create maximum score (1.0) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'value', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the raw score value */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDecimal', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get score as decimal value (alias for value()) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toPercentage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to percentage using framework Percentage object */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get score level using ScoreLevel enum */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAtLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is at or above a certain level */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCritical', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is critical level (>= 0.9) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHigh', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is high level (>= 0.7) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMedium', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is medium level (>= 0.3) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is low level (< 0.3) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'combine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Combine with another score using weighted average */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'weight', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add another score (clamped to max) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'multiply', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Multiply by factor (clamped to max) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'factor', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAbove', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is above threshold */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBelow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if score is below threshold */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get inverted score (1.0 - value) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'normalize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Normalize to custom range */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newMin', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newMax', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'weightedAverage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate weighted average of multiple scores */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scores', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'weights', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/ScoreLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents different levels of scoring (low, medium, high, critical) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the minimum threshold for this level */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get numeric priority for comparisons */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get descriptive text */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHigherThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this level is higher than another */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLowerThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this level is lower than another */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get appropriate action recommendation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from score value */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'score', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailSecurityService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailSecurityService', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hashForStorage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hashForVerification', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Hash', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secret', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateVerificationToken', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secret', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verifyToken', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'token', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secret', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxAge', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectSimilarEmails', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'existingEmails', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSpammy', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRiskScore', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCKED', 'value' => '\'blocked\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DISPOSABLE', 'value' => '\'disposable\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COMMON', 'value' => '\'common\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CORPORATE', 'value' => '\'corporate\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UNKNOWN', 'value' => '\'unknown\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTrustScore', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldBlock', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresVerification', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHighTrust', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/EmailValidationService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationService', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockedDomains', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowedDomains', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockDisposable', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAllowed', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBlocked', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValidationLevel', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Services\\EmailValidationLevel', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'App\\Framework\\Core\\ValueObjects\\EmailAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggestCorrections', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateSyntax', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/UrlManipulator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Services\\UrlManipulator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withScheme', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scheme', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withHost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'host', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withPort', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'port', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withPath', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withQuery', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withQueryParameter', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withoutQueryParameter', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withFragment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fragment', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withCredentials', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withoutCredentials', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolve', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseUrl', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relative', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'normalize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'removeTrailingSlash', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addTrailingSlash', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'appendPath', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathSegment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'prependPath', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathSegment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'secure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'insecure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Url', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Services/VersionParser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service für das Parsen von Versions-Strings * Unterstützt SemVer 2.0.0 Format: major.minor.patch[-prerelease][+buildmetadata] */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst einen Versions-String in seine Komponenten */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Versions-String gültig ist */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFullSemVer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein String dem vollständigen SemVer Format entspricht */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSimpleFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein String dem vereinfachten Format entspricht */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidPreRelease', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validiert Pre-Release Format */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'preRelease', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidBuildMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validiert Build-Metadaten Format */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'buildMetadata', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'normalize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Normalisiert eine Version zu vollständigem SemVer Format */', 'namespace' => 'App\\Framework\\Core\\ValueObjects\\Services', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Statistics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Statistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für Statistiken mit verschiedenen Metriken * Unterstützt Zähler, Memory-Usage, Hit-Ratios, Metadaten und Empfehlungen */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $counters * @param array $metadata * @param array $recommendations */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryUsageMb', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatioPercent', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'countersOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Statistiken nur mit Zählern * @param array $counters */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMemory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Statistiken mit Zählern und Speicherverbrauch * @param array $counters */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryUsageMb', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Performance-Statistiken mit Hit-Ratio * @param array $counters */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatioPercent', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryUsageMb', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'comprehensive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt umfassende Statistiken mit allen Metriken * @param array $counters * @param array $metadata * @param array $recommendations */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryUsageMb', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatioPercent', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt aus Array (für Legacy-Kompatibilität) * @param array $data */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCounters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Zähler zurück * @return array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt einen spezifischen Zähler zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Zähler existiert */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Gesamtanzahl aller Zähler zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryUsageMb', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Speicherverbrauch in MB zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?float', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHitRatioPercent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Hit-Ratio in Prozent zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?float', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Metadaten zurück * @return array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadataValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt einen spezifischen Metadaten-Wert zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Empfehlungen zurück * @return array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Empfehlungen vorhanden sind */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withAdditionalCounters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine neue Instanz mit zusätzlichen Zählern * @param array $additionalCounters */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalCounters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withAdditionalMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine neue Instanz mit zusätzlichen Metadaten * @param array $additionalMetadata */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalMetadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withAdditionalRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine neue Instanz mit zusätzlichen Empfehlungen * @param array $additionalRecommendations */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalRecommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kombiniert diese Statistiken mit anderen */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für Serialisierung/Legacy-Kompatibilität * @return array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine formatierte String-Repräsentation zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/TimeUnit.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\TimeUnit', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NANOSECOND', 'value' => '\'ns\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MICROSECOND', 'value' => '\'μs\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MILLISECOND', 'value' => '\'ms\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SECOND', 'value' => '\'s\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MINUTE', 'value' => '\'min\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HOUR', 'value' => '\'h\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DAY', 'value' => '\'d\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WEEK', 'value' => '\'w\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMultiplierToSeconds', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamePlural', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bestUnitFor', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unit', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timestamp.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Immutable timestamp value object for events */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromClock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timestamp from Clock instance */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromFloat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timestamp from microtime float */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'microtime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'now', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timestamp for current time */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDateTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timestamp from DateTimeImmutable */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toFloat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get as microtime float */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get as unix timestamp (loses microsecond precision) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMicroseconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get microseconds part (0-999999) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDateTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to DateTimeImmutable */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => '?DateTimeZone', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toIso8601', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to ISO 8601 string format */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toIso8601String', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to ISO 8601 string format (alias) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSqlString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to SQL timestamp string format */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Format timestamp */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => '?DateTimeZone', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toIsoString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get ISO 8601 string representation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => '?DateTimeZone', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compare with another timestamp */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBefore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this timestamp is before another */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAfter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this timestamp is after another */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'diff', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate duration between timestamps */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'age', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate duration since this timestamp */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timeUntil', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate duration until this timestamp */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timeAgo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human readable time ago */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'jsonSerialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * JSON serialization */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'frameworkdatetime' => 'App\\Framework\\DateTime\\DateTime', 'systemclock' => 'App\\Framework\\DateTime\\SystemClock', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Timezone.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Timezone', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Timezone value object */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from timezone string */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'utc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create UTC timezone */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'berlin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timezone for Europe/Berlin */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'newYork', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timezone for America/New_York */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tokyo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create timezone for Asia/Tokyo */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDateTimeZone', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get DateTimeZone object */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeZone', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOffsetFromUtc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timezone offset in seconds from UTC */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOffsetString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timezone offset as string (+/-HH:MM) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isUtc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if timezone is UTC */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'usesDaylightSaving', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if timezone uses daylight saving time */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timezone name */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAbbreviation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timezone abbreviation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getContinent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get continent */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get city/region */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidForCountry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a valid timezone for geographic region */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Url.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Url', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'scheme', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'host', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'port', ), 'phpDoc' => NULL, 'type' => '?int', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'path', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'query', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'fragment', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'user', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'password', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'build', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scheme', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'host', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'port', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fragment', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'url', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEffectivePort', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPortEnum', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\Port', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSecure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHttp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLocal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAbsolute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRelative', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasCredentials', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOrigin', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameOrigin', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameDomain', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Core\\ValueObjects\\Url', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ValueObjects/Version.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ValueObjects\\Version', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für semantische Versionierung * Unterstützt SemVer 2.0.0 Format: major.minor.patch[-prerelease][+buildmetadata] */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'major', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minor', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'patch', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'preRelease', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'buildMetadata', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Version aus String */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromComponents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Version aus Komponenten (alias für Konstruktor für bessere Lesbarkeit) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'major', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minor', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'patch', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'preRelease', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'buildMetadata', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den vollständigen Versions-String zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMajor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Major-Version zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMinor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Minor-Version zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Patch-Version zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPreRelease', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Pre-Release-String zurück (falls vorhanden) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBuildMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Build-Metadaten zurück (falls vorhanden) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompatibleWith', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob diese Version mit einer anderen kompatibel ist (gleiche Major-Version) */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNewerThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob diese Version neuer als eine andere ist */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isOlderThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob diese Version älter als eine andere ist */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob diese Version gleich einer anderen ist */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPreRelease', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob dies eine Pre-Release-Version ist */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isStable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob dies eine stabile Version ist */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementMajor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine neue Version mit erhöhter Major-Version zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementMinor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine neue Version mit erhöhter Minor-Version zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementPatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine neue Version mit erhöhter Patch-Version zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersionCore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt nur die Kern-Version ohne Pre-Release und Build-Metadaten zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getShortVersion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine kurze Version (major.minor) zurück */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String-Repräsentation */', 'namespace' => 'App\\Framework\\Core\\ValueObjects', 'uses' => array ( 'versionparser' => 'App\\Framework\\Core\\ValueObjects\\Services\\VersionParser', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/VersionInfo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\VersionInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Stellt Versionsinformationen für das Framework bereit. */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die aktuelle Version des Frameworks zurück. */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAtLeast', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob die aktuelle Version mindestens der angegebenen Version entspricht. */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHigherThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob die aktuelle Version höher als die angegebene Version ist. */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEnvironmentInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Informationen über die Umgebung zurück. * * @return array{framework: string, php: string, os: string} */', 'namespace' => 'App\\Framework\\Core', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/ViewModel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Core\\ViewModel', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Core/Warmup/ContainerWarmupStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Warmup\\ContainerWarmupStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Container Warmup Strategy * * Provides intelligent container warmup strategies for different environments. * Optimizes container compilation and dependency resolution for production use. */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'warmup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Warmup container based on environment and usage patterns */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\Warmup\\WarmupResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Warmup\\WarmupResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Warmup Result Value Object */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $operations * @param array $optimizations */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'optimizations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSuccessfulOperations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFailedOperations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Warmup\\WarmupOperation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Warmup Operation Value Object */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'details', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Core\\Warmup', 'uses' => array ( 'environment' => 'App\\Framework\\Config\\Environment', 'environmenttype' => 'App\\Framework\\Config\\EnvironmentType', 'container' => 'App\\Framework\\DI\\Container', 'containercompiler' => 'App\\Framework\\DI\\ContainerCompiler', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'dependencyresolver' => 'App\\Framework\\DI\\DependencyResolver', 'logger' => 'App\\Framework\\Logging\\Logger', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/AdvancedHash.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\AdvancedHash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Advanced Hash Service * * Provides advanced cryptographic hash functions beyond basic MD5/SHA-1. * Supports SHA-3, BLAKE2, and other modern hash algorithms. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sha3', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash data using SHA-3 */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'blake2b', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash data using BLAKE2b */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'blake2s', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash data using BLAKE2s (faster variant for smaller outputs) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shake128', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash data using SHAKE128 (extendable-output function) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shake256', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash data using SHAKE256 (extendable-output function) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'xxhash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash data using xxHash (fast non-cryptographic hash) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seed', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hmac', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compute HMAC with advanced hash functions */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify hash against expected value (timing-safe comparison) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedHash', 'type' => 'App\\Framework\\Cryptography\\HashResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hashFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash file using advanced algorithms */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\HashResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAvailableAlgorithms', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get available hash algorithms * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/ConstantTimeExecutor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\ConstantTimeExecutor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Constant Time Executor * * Executes operations in constant time to prevent timing attacks. * Enforces a minimum execution time by sleeping if the operation * completes faster than the target duration. * * Particularly important for: * - Password verification * - TOTP verification * - Token validation * - Any security-sensitive comparison operations */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'highresolutionclock' => 'App\\Framework\\DateTime\\HighResolutionClock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\HighResolutionClock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetDuration', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMilliseconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create with millisecond target duration */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'highresolutionclock' => 'App\\Framework\\DateTime\\HighResolutionClock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\HighResolutionClock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'milliseconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute operation in constant time */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'highresolutionclock' => 'App\\Framework\\DateTime\\HighResolutionClock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeWithTiming', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute operation and return both result and actual duration * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'highresolutionclock' => 'App\\Framework\\DateTime\\HighResolutionClock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTargetDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the configured target duration */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'highresolutionclock' => 'App\\Framework\\DateTime\\HighResolutionClock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/CryptographicUtilities.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\CryptographicUtilities', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cryptographic Utilities Service * * Provides various cryptographic utility functions including timing-safe * comparisons, secure random validation, and constant-time operations. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timingSafeEquals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Timing-safe string comparison */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'known', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timingSafeArrayEquals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Timing-safe comparison of arrays * @param array $known * @param array $user */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'known', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateNonce', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate cryptographically secure nonce */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateIv', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate initialization vector (IV) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateEntropy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate entropy of random data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minimumEntropy', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateShannonEntropy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate Shannon entropy of data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'constantTimeModPow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Constant-time modular exponentiation */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'base', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exponent', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'modulus', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'secureWipe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Secure memory wipe (attempt to clear sensitive data) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => true, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateUuid4', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate cryptographically secure UUID v4 */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stretchKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Key stretching using iteration */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'salt', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'xorStrings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * XOR two strings (for XOR cipher operations) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'str1', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'str2', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generatePadding', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate cryptographically secure random padding */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'removePadding', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove PKCS#7 padding */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateBitString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate cryptographically secure bit string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bitStringToBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert bit string to bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bitString', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateKeyStrength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate cryptographic key strength */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minimumBits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateUuid5', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate deterministic UUID from data (UUID v5) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'constantTimeArraySearch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Constant-time array search */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'haystack', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'needle', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DerivedKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\DerivedKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Derived Key Value Object * * Represents a key derived from a password using key derivation functions. * Contains the derived key material and all parameters needed for verification. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'salt', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryCost', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threads', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockSize', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parallelization', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the derived key bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSalt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the salt used for derivation */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the algorithm used */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the iteration count */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key length in bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryCost', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory cost (Argon2 only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getThreads', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get thread count (Argon2 only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBlockSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get block size (scrypt only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParallelization', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parallelization factor (scrypt only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key as hexadecimal string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSaltHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the salt as hexadecimal string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyBase64', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key as Base64 string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSaltBase64', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get salt as Base64 string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check equality with another DerivedKey */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export to array (for serialization) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array (for deserialization) * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from hexadecimal strings */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyHex', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'saltHex', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryCost', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threads', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockSize', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parallelization', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get summary information (safe for logging) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isArgon2', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an Argon2 derived key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPbkdf2', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a PBKDF2 derived key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isScrypt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a scrypt derived key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignature.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\DigitalSignature', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Digital Signature Service * * Provides digital signature creation and verification using RSA and ECDSA algorithms. * Supports various hash algorithms and key formats. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateRsaKeyPair', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate RSA key pair */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\KeyPair', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateEcdsaKeyPair', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate ECDSA key pair */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\KeyPair', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'curve', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sign', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sign data with private key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'privateKey', 'type' => 'App\\Framework\\Cryptography\\PrivateKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify signature with public key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'signature', 'type' => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'publicKey', 'type' => 'App\\Framework\\Cryptography\\PublicKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'signJson', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sign JSON data (useful for API signatures) * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'privateKey', 'type' => 'App\\Framework\\Cryptography\\PrivateKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verifyJson', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify JSON signature * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'signature', 'type' => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'publicKey', 'type' => 'App\\Framework\\Cryptography\\PublicKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createDetachedSignature', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create detached signature (signature separate from data) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'privateKey', 'type' => 'App\\Framework\\Cryptography\\PrivateKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verifyDetachedSignature', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify detached signature */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'base64Signature', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'publicKey', 'type' => 'App\\Framework\\Cryptography\\PublicKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadPrivateKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Load private key from PEM string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\PrivateKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pemData', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'passphrase', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadPublicKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Load public key from PEM string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\PublicKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pemData', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/DigitalSignatureResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\DigitalSignatureResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Digital Signature Result Value Object * * Represents the result of a digital signature operation including the signature * and all metadata needed for verification. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'signature', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'curve', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSignature', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the signature bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the signature algorithm */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the hash algorithm used */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeySize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key size in bits */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurve', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the curve name (ECDSA only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSignatureBase64', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get signature as Base64 string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSignatureHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get signature as hexadecimal string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an RSA signature */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEcdsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an ECDSA signature */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSignatureLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get signature length in bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export to array (for serialization) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array (for deserialization) * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromBase64', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from Base64 signature */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'base64Signature', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'curve', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from hexadecimal signature */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hexSignature', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hashAlgorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'curve', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get signature description */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get summary information (safe for logging) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/HashResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\HashResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash Result Value Object * * Represents the result of a cryptographic hash operation including the hash * and all metadata about the hashing process. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'inputLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputLength', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seed', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the hash bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the hash algorithm used */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInputLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the input data length in bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key length in bytes (for keyed hashes) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOutputLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the output length in bytes (for extendable-output functions) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSeed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the seed value (for non-cryptographic hashes) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hash as hexadecimal string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashBase64', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hash as Base64 string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashBase64Url', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hash as Base64 URL-safe string */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hash length in bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHashLengthBits', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hash length in bits */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCryptographic', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a cryptographic hash */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isKeyed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a keyed hash */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isExtendableOutput', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an extendable-output function */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check equality with another hash result */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verifyAgainst', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify against input data (recompute and compare) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hasher', 'type' => 'App\\Framework\\Cryptography\\AdvancedHash', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export to array (for serialization) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array (for deserialization) * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from hexadecimal hash */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hexHash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'inputLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputLength', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seed', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'truncate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Truncate hash to specified length */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get summary information (safe for logging) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithmFamily', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get algorithm family (e.g., \'sha3\', \'blake2\', \'shake\') */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyDerivationFunction.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\KeyDerivationFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Key Derivation Function Service * * Provides secure key derivation functions for password hashing and key stretching. * Supports PBKDF2, Argon2ID, and scrypt algorithms. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSalt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate salt for key derivation */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'pbkdf2', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Derive key using PBKDF2 */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DerivedKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'salt', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'argon2id', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Derive key using Argon2ID (recommended) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DerivedKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'salt', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryCost', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeCost', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threads', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scrypt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Derive key using scrypt */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DerivedKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'salt', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'costParameter', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parallelization', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify password against derived key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'derivedKey', 'type' => 'App\\Framework\\Cryptography\\DerivedKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hashPassword', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hash password with automatic salt generation (recommended for new passwords) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\DerivedKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended parameters for different security levels * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLevel', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/KeyPair.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\KeyPair', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Key Pair Value Object * * Represents a cryptographic key pair consisting of a private and public key. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'privateKey', 'type' => 'App\\Framework\\Cryptography\\PrivateKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'publicKey', 'type' => 'App\\Framework\\Cryptography\\PublicKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPrivateKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the private key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\PrivateKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPublicKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the public key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\PublicKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key algorithm */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeySize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key size in bits */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurve', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get curve name (ECDSA only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an RSA key pair */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEcdsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an ECDSA key pair */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export both keys to array * @return array> */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key pair summary (safe for logging) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PrivateKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\PrivateKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Private Key Value Object * * Represents a cryptographic private key with metadata. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyMaterial', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'curve', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyMaterial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key material (PEM format) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the algorithm */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeySize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key size in bits */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurve', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the curve name (ECDSA only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an RSA key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEcdsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an ECDSA key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export key information to array (excludes sensitive key material) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key fingerprint (SHA-256 hash of public key) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPublicKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract public key from this private key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\PublicKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEncrypted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if key is encrypted */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key type description */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate key material */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/PublicKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\PublicKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Public Key Value Object * * Represents a cryptographic public key with metadata. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyMaterial', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'curve', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyMaterial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key material (PEM format) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlgorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the algorithm */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeySize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the key size in bits */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurve', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the curve name (ECDSA only) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an RSA key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEcdsa', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is an ECDSA key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export key to array (includes key material - safe for public keys) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key fingerprint (SHA-256 hash) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getShortFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get short fingerprint (first 16 chars of full fingerprint) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDerFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key in DER format (binary) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key type description */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check equality with another public key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate key material */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toJwk', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get key as JWK (JSON Web Key) format * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureToken.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\SecureToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Secure Token Value Object * * Represents a cryptographically secure token with metadata about its * generation, format, and intended use. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rawBytes', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the token value */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the token type */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the token format */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the token length */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the token prefix (if any) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRawBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the raw bytes */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get metadata * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCreatedAt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get creation timestamp */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * String representation */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Magic method for string conversion */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValueWithoutPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get token without prefix */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token has prefix */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValueLength', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get token length in characters (not bytes) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRawBytesHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get raw bytes as hexadecimal */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRawBytesBase64', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get raw bytes as Base64 */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check equality with another token (timing-safe) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verify token value (timing-safe) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'candidateToken', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is of specific type */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is in specific format */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isApiKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is API key */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSessionToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is session token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCsrfToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is CSRF token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isVerificationToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is verification token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBearerToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is Bearer token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isOtp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is OTP */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSingleUse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is single-use */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLongLived', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if token is long-lived */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAgeInSeconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get token age in seconds */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadataValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get specific metadata value */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export to array (for serialization) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array (for deserialization) * @param array $data */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSafeSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get safe summary (excludes sensitive token value) * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 33 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get token fingerprint (for identification without exposing value) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 34 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getShortFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get short fingerprint (first 16 chars) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 35 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaskedValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mask token value for logging */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cryptography/SecureTokenGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cryptography\\SecureTokenGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Secure Token Generator Service * * Generates cryptographically secure tokens for various use cases including * API keys, session tokens, CSRF tokens, and verification tokens. */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_API_KEY', 'value' => '\'api_key\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_SESSION', 'value' => '\'session\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_CSRF', 'value' => '\'csrf\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_VERIFICATION', 'value' => '\'verification\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_BEARER', 'value' => '\'bearer\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_REFRESH', 'value' => '\'refresh\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_OTP', 'value' => '\'otp\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TYPE_WEBHOOK', 'value' => '\'webhook\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'FORMAT_BASE64', 'value' => '\'base64\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'FORMAT_BASE64_URL', 'value' => '\'base64url\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'FORMAT_HEX', 'value' => '\'hex\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'FORMAT_BASE32', 'value' => '\'base32\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'FORMAT_ALPHANUMERIC', 'value' => '\'alphanumeric\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a secure token * @param array|null $metadata */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateApiKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate API key with standard format */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSessionToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate session token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateCsrfToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate CSRF token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateVerificationToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate verification token (email, phone, etc.) */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'purpose', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateBearerToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate Bearer token for OAuth/JWT-like usage */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateRefreshToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate refresh token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateOtpToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate OTP (One-Time Password) token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'digits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateWebhookToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate webhook signature token */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateCustom', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate token with custom alphabet */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cryptography\\SecureToken', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alphabet', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateBatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate batch of tokens * @return array */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'prefix', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValidFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate token format */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'token', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntropy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Estimate token entropy in bits */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'token', 'type' => 'App\\Framework\\Cryptography\\SecureToken', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory method */', 'namespace' => 'App\\Framework\\Cryptography', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/Cuid.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cuid\\Cuid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cuid Value Object * * Collision-resistant Unique Identifier * - 25 characters total (c + timestamp + counter + fingerprint + random) * - Base36 encoded (0-9, a-z) - case insensitive * - Optimized for horizontal scaling and collision resistance * - Always starts with \'c\' for collision-resistant */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'LENGTH', 'value' => '25', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'PREFIX', 'value' => '\'c\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'ALPHABET', 'value' => '\'0123456789abcdefghijklmnopqrstuvwxyz\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'TIMESTAMP_LENGTH', 'value' => '8', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'COUNTER_LENGTH', 'value' => '4', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'FINGERPRINT_LENGTH', 'value' => '4', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'RANDOM_LENGTH', 'value' => '8', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromComponents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from components */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counter', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fingerprint', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'random', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from string */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the string representation */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the string value */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Magic method for string conversion */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the timestamp component (Unix timestamp in milliseconds) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDateTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the timestamp as DateTime */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the counter component */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the fingerprint component */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRandom', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the random component */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check equality with another Cuid */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compare', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compare with another Cuid for sorting */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isOlderThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this Cuid is older than another */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNewerThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this Cuid is newer than another */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAgeInMilliseconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get age in milliseconds */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAgeInSeconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get age in seconds */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameProcess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if Cuid is from the same process/machine (same fingerprint) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'datetimeimmutable' => 'DateTimeImmutable', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Cuid/CuidGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Cuid\\CuidGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cuid Generator Service * * Generates Collision-resistant Unique Identifiers with machine fingerprinting. */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customFingerprint', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a new Cuid */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cuid\\Cuid', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateAt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a Cuid at a specific timestamp (milliseconds) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cuid\\Cuid', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestampMs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateInPast', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a Cuid in the past (useful for testing) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cuid\\Cuid', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'millisecondsAgo', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateBatch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a batch of Cuids with incrementing counters * @return array */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSequence', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a sequence of Cuids with incrementing timestamps * @return array */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'count', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'intervalMs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateWithCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a Cuid with a specific counter value (for testing) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cuid\\Cuid', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'counter', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parse a Cuid string and validate it */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cuid\\Cuid', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cuidString', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate if a string is a valid Cuid */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the current fingerprint */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurrentCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the current counter value */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetCounter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset the counter (useful for testing) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if two Cuids could have been generated by the same generator */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cuid', 'type' => 'App\\Framework\\Cuid\\Cuid', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create factory method */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customFingerprint', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createWithFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create with a deterministic fingerprint (for testing) */', 'namespace' => 'App\\Framework\\Cuid', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fingerprint', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/GeoAnomalyDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * GeoIP Anomaly Detector - Uses existing GeoIP infrastructure for geographic attack detection * * Detects distributed DDoS attacks by analyzing geographic patterns and anomalies * in request origins using the framework\'s existing GeoIP system. */', 'namespace' => 'App\\Framework\\DDoS\\Analysis', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'logger' => 'App\\Framework\\Logging\\Logger', 'geoip' => 'App\\Infrastructure\\GeoIp\\GeoIp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectAnomalies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detect geographic anomalies that may indicate distributed DDoS attacks */', 'namespace' => 'App\\Framework\\DDoS\\Analysis', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'logger' => 'App\\Framework\\Logging\\Logger', 'geoip' => 'App\\Infrastructure\\GeoIp\\GeoIp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'geoIpService', 'type' => 'App\\Infrastructure\\GeoIp\\GeoIp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/TrafficPatternAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Traffic Pattern Analyzer - Uses existing RateLimiter for intelligent traffic analysis * * Analyzes traffic patterns to detect volumetric DDoS attacks by leveraging * the framework\'s existing RateLimit infrastructure. */', 'namespace' => 'App\\Framework\\DDoS\\Analysis', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTrafficPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze traffic patterns using existing RateLimiter infrastructure */', 'namespace' => 'App\\Framework\\DDoS\\Analysis', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimiter', 'type' => 'App\\Framework\\RateLimit\\RateLimiter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'windowSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRisk.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryRisk', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents country-specific risk assessment for DDoS detection */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( 'countrycode' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'riskLevel', 'type' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryRiskLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'riskScore', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHighRisk', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isBotFarmCountry', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isAnonymous', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyze', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCritical', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresBlocking', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresThrottling', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( 'countrycode' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryRiskLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryRiskLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Risk level classification for countries */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/CountryVelocity.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\CountryVelocity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents velocity analysis for country-specific request patterns */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( 'countrycode' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentPeriodRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baselinePeriodRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestDifference', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'velocityPercentage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'velocityScore', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trend', 'type' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\VelocityTrend', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analysisWindow', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baselineRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analysisWindow', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSpike', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCriticalSpike', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAnomalous', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresBlocking', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresThrottling', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( 'countrycode' => 'App\\Framework\\Core\\ValueObjects\\CountryCode', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/DistributionPattern.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\DistributionPattern', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Geographic distribution patterns for attack classification */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SINGLE_ORIGIN', 'value' => '\'single_origin\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REGIONALLY_CLUSTERED', 'value' => '\'regionally_clustered\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MODERATELY_DISTRIBUTED', 'value' => '\'moderately_distributed\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGHLY_DISTRIBUTED', 'value' => '\'highly_distributed\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GLOBAL_DISTRIBUTED', 'value' => '\'global_distributed\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/GeographicDistribution.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\GeographicDistribution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents geographic distribution analysis for DDoS detection */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetCountryCode', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'uniqueCountries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'diversityPercentage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'anomalyScore', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isAnomalous', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\DistributionPattern', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyze', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'uniqueCountries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'diversityThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'indicatesDDoS', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isGlobalAttack', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresImmedateAction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Analysis/ValueObjects/VelocityTrend.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects\\VelocityTrend', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Trend direction for velocity analysis */', 'namespace' => 'App\\Framework\\DDoS\\Analysis\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INCREASING', 'value' => '\'increasing\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DECREASING', 'value' => '\'decreasing\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STABLE', 'value' => '\'stable\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/AttackPatternDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detects specific attack patterns from analysis results */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\DDoS\\DDoSConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'identifyAttackPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Identify specific attack patterns from analysis results * * @param array $analyses Multi-layer analysis results * @param HttpRequest $request The HTTP request being analyzed * @return array Detected attack patterns */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculatePatternConfidence', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate pattern confidence score based on analysis results */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'assessPatternSeverity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Assess severity of detected patterns */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'patterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPatternAnalysisDetails', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get detailed pattern analysis */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzePatternEvolution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze pattern evolution over time */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'historicalData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generatePatternFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate pattern fingerprint for tracking */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/RequestAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyzes HTTP requests for suspicious patterns and bot signatures */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClientIp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract client IP from request */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeRequestSignature', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze request signature for bot/automation detection * * @param HttpRequest $request The HTTP request to analyze * @return array Analysis results with signature data and bot score */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeRequestFrequency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze request frequency patterns for the given client IP */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requests', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateRequestFingerprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a unique fingerprint for the request based on characteristics */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createBehavioralProfile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a behavioral profile from request history */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requests', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectAutomationIndicators', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detect automation indicators in request patterns */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requests', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzePayloadCharacteristics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze payload characteristics for threat detection */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateRequestEntropy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate request entropy for randomness detection */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectSessionHijackingIndicators', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detect session hijacking indicators */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sessionData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeHttpMethodAppropriateness', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze HTTP method appropriateness */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ServiceHealthAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyzes service health using CircuitBreaker metrics */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'circuitbreakerinterface' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerInterface', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'services', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeServiceHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze service health using CircuitBreaker * * @param string $clientIp The client IP address (for context logging) * @return array Analysis results with health scores and degraded services */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'circuitbreakerinterface' => 'App\\Framework\\CircuitBreaker\\CircuitBreakerInterface', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/ThreatLevelCalculator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculates threat levels based on multi-layer analysis results */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'weights', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateThreatLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate overall threat level from all analysis layers * * @param array $analyses Multi-layer analysis results * @return ThreatLevel The calculated threat level */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateConfidence', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate confidence level from analysis results * * @param array $analyses Multi-layer analysis results * @return float Confidence level (0.0-1.0) */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended action based on threat level * * @param ThreatLevel $threatLevel The calculated threat level * @return string Recommended action code */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threatLevel', 'type' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Components/WafAnalysisAdapter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Components\\WafAnalysisAdapter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Adapter for WAF analysis in DDoS protection context * * This component provides a unified interface for WAF analysis, * supporting both the general WafEngine and the specialized DDoSWafLayer. */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'ddoswaflayer' => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'wafengine' => 'App\\Framework\\Waf\\WafEngine', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'wafEngine', 'type' => 'App\\Framework\\Waf\\WafEngine', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ddosWafLayer', 'type' => '?App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze request using WAF components * * @param HttpRequest $request The HTTP request to analyze * @return array Analysis results with threat assessment and confidence */', 'namespace' => 'App\\Framework\\DDoS\\Components', 'uses' => array ( 'ddoswaflayer' => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'wafengine' => 'App\\Framework\\Waf\\WafEngine', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\DDoSConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Protection Configuration using Framework Value Objects */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'volumetricThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'distributedThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'applicationThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'protocolThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'botnetThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowAttackThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'coordinatedThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'amplificationThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analysisWindow', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxProcessingTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableGeographicBlocking', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableBotDetection', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableMachineLearning', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trustedIps', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exemptPaths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criticalThreatThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'highThreatThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mediumThreatThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logAllAssessments', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logOnlyThreats', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheAssessmentDuration', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockedCountries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowedCountries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableCaptchaChallenge', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableProofOfWork', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRequestsPerIpPerMinute', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRequestsPerIpPerHour', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableAdaptiveRateLimiting', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableCircuitBreakerIntegration', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimitWindow', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreakerTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'assessmentRetentionPeriod', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVolumetricThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get volumetric attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDistributedThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get distributed attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getApplicationThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get application layer attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProtocolThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get protocol attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBotnetThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get botnet attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowAttackThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCoordinatedThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get coordinated attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAmplificationThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get amplification attack threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCriticalThreatThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get critical threat threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHighThreatThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get high threat threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMediumThreatThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get medium threat threshold with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAnalysisWindow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get analysis window with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaxProcessingTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get max processing time with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheAssessmentDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache assessment duration with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRateLimitWindow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get rate limit window with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCircuitBreakerTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get circuit breaker timeout with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAssessmentRetentionPeriod', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get assessment retention period with default fallback */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create development configuration (more permissive) */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create production configuration (strict security) */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create testing configuration (disabled protection) */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isTrustedIp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if IP is trusted */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isExemptPath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if path is exempt from protection */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCountryBlocked', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if country is blocked */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'countryCode', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getThreatThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get threat threshold for level */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldLogAssessment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if assessment should be logged */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'confidence', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRateLimitForIp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get rate limit for IP based on configuration */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ip', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheTtlSeconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache TTL in seconds for external systems */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAnalysisWindowSeconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get analysis window in seconds for legacy systems */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProcessingTimeExceeded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if processing time exceeded threshold */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actualTime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCircuitBreakerConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timeout configuration for CircuitBreaker */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'adaptive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create adaptive configuration based on current system load */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'systemLoad', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/DDoSProtectionEngine.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\DDoSProtectionEngine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Protection Engine - Orchestrates security modules for DDoS protection * * This engine acts as an intelligent coordinator that leverages multiple * specialized components to detect and respond to DDoS attacks. */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'geoanomalydetector' => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', 'trafficpatternanalyzer' => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', 'attackpatterndetector' => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', 'requestanalyzer' => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', 'servicehealthanalyzer' => 'App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer', 'threatlevelcalculator' => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', 'wafanalysisadapter' => 'App\\Framework\\DDoS\\Components\\WafAnalysisAdapter', 'adaptiveresponsesystem' => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'logger' => 'App\\Framework\\Logging\\Logger', 'performanceservice' => 'App\\Framework\\Performance\\PerformanceService', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'trafficAnalyzer', 'type' => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'geoDetector', 'type' => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseSystem', 'type' => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLogger', 'type' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performance', 'type' => 'App\\Framework\\Performance\\PerformanceService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\DDoS\\DDoSConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threatCalculator', 'type' => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'patternDetector', 'type' => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestAnalyzer', 'type' => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serviceAnalyzer', 'type' => 'App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'wafAnalyzer', 'type' => 'App\\Framework\\DDoS\\Components\\WafAnalysisAdapter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeRequest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Main analysis method - orchestrates all detection layers */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'geoanomalydetector' => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', 'trafficpatternanalyzer' => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', 'attackpatterndetector' => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', 'requestanalyzer' => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', 'servicehealthanalyzer' => 'App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer', 'threatlevelcalculator' => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', 'wafanalysisadapter' => 'App\\Framework\\DDoS\\Components\\WafAnalysisAdapter', 'adaptiveresponsesystem' => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'logger' => 'App\\Framework\\Logging\\Logger', 'performanceservice' => 'App\\Framework\\Performance\\PerformanceService', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeResponse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute adaptive response based on threat assessment */', 'namespace' => 'App\\Framework\\DDoS', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'geoanomalydetector' => 'App\\Framework\\DDoS\\Analysis\\GeoAnomalyDetector', 'trafficpatternanalyzer' => 'App\\Framework\\DDoS\\Analysis\\TrafficPatternAnalyzer', 'attackpatterndetector' => 'App\\Framework\\DDoS\\Components\\AttackPatternDetector', 'requestanalyzer' => 'App\\Framework\\DDoS\\Components\\RequestAnalyzer', 'servicehealthanalyzer' => 'App\\Framework\\DDoS\\Components\\ServiceHealthAnalyzer', 'threatlevelcalculator' => 'App\\Framework\\DDoS\\Components\\ThreatLevelCalculator', 'wafanalysisadapter' => 'App\\Framework\\DDoS\\Components\\WafAnalysisAdapter', 'adaptiveresponsesystem' => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', 'logger' => 'App\\Framework\\Logging\\Logger', 'performanceservice' => 'App\\Framework\\Performance\\PerformanceService', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'assessment', 'type' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/AdaptiveResponseSystem.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Response\\AdaptiveResponseSystem', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Adaptive Response System - Intelligent DDoS mitigation using existing framework modules * * Coordinates responses through existing security infrastructure: * - RateLimiter for traffic shaping * - CircuitBreaker for service protection * - Cache for response optimization * - SecurityEventLogger for SIEM integration */', 'namespace' => 'App\\Framework\\DDoS\\Response', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'circuitbreaker' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'blockingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy', 'captchastrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy', 'ratelimitingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy', 'tarpitstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'responseaction' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimiter', 'type' => 'App\\Framework\\RateLimit\\RateLimiter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreaker', 'type' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'securityLogger', 'type' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\DDoS\\DDoSConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockingStrategy', 'type' => 'App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rateLimitingStrategy', 'type' => 'App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'captchaStrategy', 'type' => 'App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tarPitStrategy', 'type' => 'App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeResponse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute adaptive response based on DDoS assessment */', 'namespace' => 'App\\Framework\\DDoS\\Response', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'circuitbreaker' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'blockingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy', 'captchastrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy', 'ratelimitingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy', 'tarpitstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'responseaction' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'assessment', 'type' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\HttpRequest', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getResponseStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get response statistics for monitoring */', 'namespace' => 'App\\Framework\\DDoS\\Response', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'circuitbreaker' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'blockingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy', 'captchastrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy', 'ratelimitingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy', 'tarpitstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'responseaction' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeWindow', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateResponseStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Update response statistics */', 'namespace' => 'App\\Framework\\DDoS\\Response', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'circuitbreaker' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'blockingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy', 'captchastrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy', 'ratelimitingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy', 'tarpitstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'responseaction' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'assessment', 'type' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'response', 'type' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkAutoUnblock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if IP should be automatically unblocked */', 'namespace' => 'App\\Framework\\DDoS\\Response', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'circuitbreaker' => 'App\\Framework\\CircuitBreaker\\CircuitBreaker', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ddosconfig' => 'App\\Framework\\DDoS\\DDoSConfig', 'blockingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\BlockingStrategy', 'captchastrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\CaptchaStrategy', 'ratelimitingstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\RateLimitingStrategy', 'tarpitstrategy' => 'App\\Framework\\DDoS\\Response\\Strategies\\TarPitStrategy', 'ddosresponse' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'responseaction' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'attackpattern' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'ddosassessment' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'threatlevel' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'securityeventlogger' => 'App\\Framework\\ErrorHandling\\SecurityEventLogger', 'headers' => 'App\\Framework\\Http\\Headers', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'logger' => 'App\\Framework\\Logging\\Logger', 'ratelimiter' => 'App\\Framework\\RateLimit\\RateLimiter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/DDoSResponse.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\DDoSResponse', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Response Result - Encapsulates the mitigation response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'headers', 'type' => '?App\\Framework\\Http\\Headers', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'httpStatus', 'type' => '?App\\Framework\\Http\\Status', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create an allow response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'block', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a block response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockDuration', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rateLimit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a rate limit response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'remaining', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'resetTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'challenge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a challenge response (CAPTCHA, etc.) */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'challengeType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'challengeData', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tarPit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a tar pit response (slow response) */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'delay', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withProcessingTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add processing time to response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingTime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withHeaders', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add headers to response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalHeaders', 'type' => 'App\\Framework\\Http\\Headers', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add metadata to response */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalMetadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldBlock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if response should block the request */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresUserInteraction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if response requires user interaction */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get response summary for logging */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSuccessfulMitigation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if response indicates successful mitigation */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended cache duration for this response type */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get response age */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'headers' => 'App\\Framework\\Http\\Headers', 'status' => 'App\\Framework\\Http\\Status', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/ResponseAction.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseAction', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Response Actions - Available mitigation strategies */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCK_IMMEDIATE', 'value' => '\'block_immediate\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCK_DISTRIBUTED', 'value' => '\'block_distributed\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCK_AGGRESSIVE', 'value' => '\'block_aggressive\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCK_INTELLIGENT', 'value' => '\'block_intelligent\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RATE_LIMIT_STANDARD', 'value' => '\'rate_limit_standard\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RATE_LIMIT_MODERATE', 'value' => '\'rate_limit_moderate\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RATE_LIMIT_AGGRESSIVE', 'value' => '\'rate_limit_aggressive\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RATE_LIMIT_CONNECTION', 'value' => '\'rate_limit_connection\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CAPTCHA_CHALLENGE', 'value' => '\'captcha_challenge\'', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROOF_OF_WORK', 'value' => '\'proof_of_work\'', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'JAVASCRIPT_CHALLENGE', 'value' => '\'javascript_challenge\'', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TAR_PIT', 'value' => '\'tar_pit\'', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ENHANCED_MONITORING', 'value' => '\'enhanced_monitoring\'', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ALLOW_WITH_MONITORING', 'value' => '\'allow_with_monitoring\'', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CIRCUIT_BREAKER', 'value' => '\'circuit_breaker\'', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UPSTREAM_FILTERING', 'value' => '\'upstream_filtering\'', 'phpDoc' => NULL, )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSeverity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBlocking', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRateLimiting', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isChallenge', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresUserInteraction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExpectedDuration', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedHttpStatus', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRetryAfter', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Response/ValueObjects/ResponseType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Response\\ValueObjects\\ResponseType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Response Types - Categories of mitigation responses */', 'namespace' => 'App\\Framework\\DDoS\\Response\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ALLOW', 'value' => '\'allow\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCK', 'value' => '\'block\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RATE_LIMITED', 'value' => '\'rate_limited\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CHALLENGE', 'value' => '\'challenge\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TAR_PIT', 'value' => '\'tar_pit\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBlocking', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allowsRequest', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresSpecialHandling', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/AttackPattern.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\ValueObjects\\AttackPattern', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Attack Pattern Classification */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'VOLUMETRIC', 'value' => '\'volumetric\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROTOCOL', 'value' => '\'protocol\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'APPLICATION_LAYER', 'value' => '\'application_layer\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DISTRIBUTED', 'value' => '\'distributed\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BOTNET', 'value' => '\'botnet\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REFLECTION', 'value' => '\'reflection\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'AMPLIFICATION', 'value' => '\'amplification\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SLOWLORIS', 'value' => '\'slowloris\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSeverityLevel', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedMitigation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/DDoSAssessment.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\ValueObjects\\DDoSAssessment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Comprehensive DDoS Threat Assessment Result */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param ThreatLevel $threatLevel Overall threat level assessment * @param AttackPattern[] $attackPatterns Identified attack patterns * @param IpAddress $clientIp Source IP address * @param array $analysisResults Detailed analysis from all layers * @param float $confidence Confidence score (0.0-1.0) * @param string $recommendedAction Recommended response action * @param Duration $processingTime Time taken for analysis * @param Timestamp $timestamp When assessment was performed */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threatLevel', 'type' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attackPatterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clientIp', 'type' => 'App\\Framework\\Http\\IpAddress', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analysisResults', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'confidence', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendedAction', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingTime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createSafe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create safe assessment for when DDoS protection is disabled */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresBlocking', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if immediate blocking is recommended */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresRateLimiting', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if enhanced rate limiting is recommended */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresCaptcha', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if CAPTCHA challenge is recommended */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get human-readable summary */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAnalysisBreakdown', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get detailed analysis breakdown * * @return array */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for logging/serialization */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSuspiciousLocation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if IP is from a suspicious location */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRiskScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get risk score as percentage */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get formatted age of assessment */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFresh', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if assessment is still fresh (< 5 minutes old) */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCriticalThreat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a critical threat */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHighThreat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a high threat */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMediumThreat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a medium threat */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getThreatIndicators', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get threat indicators (calculated from attack patterns) */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Magic getter for middleware compatibility */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'ipaddress' => 'App\\Framework\\Http\\IpAddress', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS Threat Level Classification */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNumericValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresImmediateAction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresEnhancedMonitoring', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/ValueObjects/ThreatScore.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a security threat score with DDoS-specific logic */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'score', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'indicators', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sources', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromFloat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from raw float value */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromAnalyses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from multiple analysis results */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'weights', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'safe', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create safe (low threat) score */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'critical', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create critical threat score */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying score */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndicators', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get threat indicators */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSources', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get analysis sources */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresBlocking', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if blocking is required */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresRateLimiting', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if rate limiting is recommended */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresMonitoring', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if enhanced monitoring is needed */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isImmediateThreat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if threat is immediate */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedAction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended action based on threat level */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get threat level description */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'combineWith', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Combine with another threat score */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\DDoS\\ValueObjects\\ThreatScore', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'weight', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasIndicator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if threat score has specific indicator */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'indicator', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasSource', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if threat originated from specific source */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'source', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConfidence', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get confidence level based on number of sources */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array */', 'namespace' => 'App\\Framework\\DDoS\\ValueObjects', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'scorelevel' => 'App\\Framework\\Core\\ValueObjects\\ScoreLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS WAF Layer Configuration */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxResourceIntensiveRequestsPerMinute', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxSlowConnectionsPerIp', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'httpFloodThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'botDetectionThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxQueryLength', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'protocolAbuseThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRepetitiveRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableLearning', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableStatistics', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheRetentionHours', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create development configuration (more permissive) */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create production configuration (strict security) */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create testing configuration (disabled) */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getThresholdForAttackType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get configuration for specific attack type */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attackType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDetectionEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if detection type is enabled */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detectionType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheRetentionSeconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache retention time in seconds */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DDoS/Waf/DDoSWafLayer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DDoS\\Waf\\DDoSWafLayer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * DDoS-specific WAF Layer - Integrates with existing WAF infrastructure * * Detects Layer 7 DDoS attack patterns that complement the main DDoS protection engine. * This layer focuses on application-specific attack patterns that traditional * volumetric detection might miss. */', 'namespace' => 'App\\Framework\\DDoS\\Waf', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'httprequest' => 'App\\Framework\\Http\\HttpRequest', 'request' => 'App\\Framework\\Http\\Request', 'logger' => 'App\\Framework\\Logging\\Logger', 'detectioncategory' => 'App\\Framework\\Waf\\DetectionCategory', 'detectionseverity' => 'App\\Framework\\Waf\\DetectionSeverity', 'layerresult' => 'App\\Framework\\Waf\\LayerResult', 'layerinterface' => 'App\\Framework\\Waf\\Layers\\LayerInterface', 'detection' => 'App\\Framework\\Waf\\ValueObjects\\Detection', 'detectioncollection' => 'App\\Framework\\Waf\\ValueObjects\\DetectionCollection', 'layerconfig' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', 'layermetrics' => 'App\\Framework\\Waf\\ValueObjects\\LayerMetrics', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Waf\\Layers\\LayerInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\DDoS\\Waf\\DDoSWafConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'layerConfig', 'type' => '?App\\Framework\\Waf\\ValueObjects\\LayerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHealthy', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyze', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Waf\\LayerResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'request', 'type' => 'App\\Framework\\Http\\Request', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConfidenceLevel', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeoutThreshold', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'configure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConfig', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Waf\\ValueObjects\\LayerConfig', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Waf\\ValueObjects\\LayerMetrics', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'warmUp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shutdown', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependencies', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supportsParallelProcessing', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSupportedCategories', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/BindingRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\BindingRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verwaltet alle Service-Bindings */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bind', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'concrete', 'type' => 'callable|string|object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasBinding', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBinding', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'callable|string|object|null', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flush', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllBindings', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllKeys', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Container.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Container', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'invoker', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\DI\\MethodInvoker', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @template T of object * @param class-string $class * @return T */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bind', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'concrete', 'type' => 'callable|string|object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'singleton', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'concrete', 'type' => 'callable|string|object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'instance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ContainerCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\ContainerCompiler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compiles a Container into optimized PHP code for production use */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependencyResolver', 'type' => 'App\\Framework\\DI\\DependencyResolver', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compile container to PHP file with all bindings and dependencies */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompiledContainerValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if compiled container is valid and up-to-date */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compiledPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCompiledContainerPath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compiled container path based on environment and configuration */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheDir', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'load', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Load compiled container from file */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\DI\\Container', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compiledPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compileAsync', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compile container asynchronously (for production environments) */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\DefaultContainer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'outputPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DefaultContainer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\DefaultContainer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\DI\\Container', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'invoker', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\DI\\MethodInvoker', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instances', 'type' => 'App\\Framework\\DI\\InstanceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bindings', 'type' => 'App\\Framework\\DI\\BindingRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bind', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'concrete', 'type' => 'callable|string|object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'singleton', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'concrete', 'type' => 'callable|string|object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'instance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'abstract', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @inheritDoc */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'cyclicdependencyexception' => 'App\\Framework\\DI\\Exceptions\\CyclicDependencyException', 'lazyloadingexception' => 'App\\Framework\\DI\\Exceptions\\LazyLoadingException', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'cyclicdependencyexception' => 'App\\Framework\\DI\\Exceptions\\CyclicDependencyException', 'lazyloadingexception' => 'App\\Framework\\DI\\Exceptions\\LazyLoadingException', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'cyclicdependencyexception' => 'App\\Framework\\DI\\Exceptions\\CyclicDependencyException', 'lazyloadingexception' => 'App\\Framework\\DI\\Exceptions\\LazyLoadingException', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flush', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegisteredServices', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getServiceIds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all registered service IDs (for debugging/admin) * @return array */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'cyclicdependencyexception' => 'App\\Framework\\DI\\Exceptions\\CyclicDependencyException', 'lazyloadingexception' => 'App\\Framework\\DI\\Exceptions\\LazyLoadingException', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\ConstructorCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Type-safe cache for constructor dependency information */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if class is cached */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache entry for class */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Store cache entry for class */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remove', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove cache entry for specific class */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all cache entries */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCachedClasses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all cached class names * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache statistics */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependentsOf', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find all entries that depend on a specific class * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntriesWithDependencyType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get entries that use specific dependency type * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ConstructorCacheEntry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a cached constructor parameter with its dependency information */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache entry for a class with no constructor parameters */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromCacheInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache entry from resolved dependencies * @param array> $cacheInfo */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheInfo', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache entry from ParameterCacheInfo objects */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'App\\Framework\\DI\\Dependency\\ParameterCacheInfo', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if constructor has parameters */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameterCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get number of parameters */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameter cache info at specific position */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\DI\\Dependency\\ParameterCacheInfo', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'position', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameter cache collection */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParametersAsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameters as legacy array format (for backward compatibility) * @return array> */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependencyTypes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get dependency types used in this constructor * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'usesDependencyType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if constructor uses specific dependency type */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependencyType', 'type' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all class dependencies referenced in this constructor * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependsOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if constructor depends on specific class */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/Dependency.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\Dependency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a resolved dependency with caching information */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'default', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'null', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependency', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'nullableDependency', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromCacheInfo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\ClassName', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheInfo', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of resolved dependencies with type safety and iteration support */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'IteratorAggregate', 1 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromValues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create collection from resolved dependency values * @param array $dependencies */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependencies', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create empty collection */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all dependency values as array (for backward compatibility) * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get dependency at specific index */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection has dependencies */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count dependencies */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get iterator for foreach loops * @return \\ArrayIterator */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'ArrayIterator', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'with', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create collection with additional dependency */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependency', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/DependencyType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DEFAULT', 'value' => '\'default\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NULL', 'value' => '\'null\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DEPENDENCY', 'value' => '\'dependency\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NULLABLE_DEPENDENCY', 'value' => '\'nullable_dependency\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\ParameterCacheCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Type-safe collection of parameter cache information */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'IteratorAggregate', 1 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create collection from ParameterCacheInfo objects * @param ParameterCacheInfo ...$parameters */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'App\\Framework\\DI\\Dependency\\ParameterCacheInfo', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create collection from legacy cache array format * @param array> $cacheArray */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheArray', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create empty collection */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get iterator for foreach loops * @return \\ArrayIterator */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'ArrayIterator', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count parameters */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection is empty */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameter at specific position */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\DI\\Dependency\\ParameterCacheInfo', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'position', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all parameters as array * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toLegacyArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to legacy array format (for backward compatibility) * @return array> */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependencyTypes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all dependency types used * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'usesDependencyType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection uses specific dependency type */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all class dependencies * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependsOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if any parameter depends on specific class */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter parameters by dependency type */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassDependencyParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameters that have class dependencies */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolveValues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Resolve all parameter values using container * @return array */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ParameterCacheInfo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\ParameterCacheInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents cached information for a single constructor parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'default', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache info for default value parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'null', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache info for null parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache info for dependency parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'nullableDependency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache info for nullable dependency parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from legacy cache array format */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheInfo', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to legacy array format (for backward compatibility) */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasClassDependency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this parameter has a class dependency */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependsOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this parameter has a specific class dependency */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolveValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the resolved value for this parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'container' => 'App\\Framework\\DI\\Container', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Dependency/ResolvedParameter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Dependency\\ResolvedParameter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a resolved parameter with its value and cache information */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependency', 'type' => 'App\\Framework\\DI\\Dependency\\Dependency', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache information for this parameter */', 'namespace' => 'App\\Framework\\DI\\Dependency', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/DependencyResolver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\DependencyResolver', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löst Constructor-Abhängigkeiten auf */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'constructorcache' => 'App\\Framework\\DI\\Dependency\\ConstructorCache', 'constructorcacheentry' => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencycollection' => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'resolvedparameter' => 'App\\Framework\\DI\\Dependency\\ResolvedParameter', 'parameterresolutionexception' => 'App\\Framework\\DI\\Exceptions\\ParameterResolutionException', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionparameter' => 'App\\Framework\\Reflection\\WrappedReflectionParameter', 'reflectiontype' => 'ReflectionType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resolveDependencies', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flushCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache statistics for debugging/monitoring */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'constructorcache' => 'App\\Framework\\DI\\Dependency\\ConstructorCache', 'constructorcacheentry' => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencycollection' => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'resolvedparameter' => 'App\\Framework\\DI\\Dependency\\ResolvedParameter', 'parameterresolutionexception' => 'App\\Framework\\DI\\Exceptions\\ParameterResolutionException', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionparameter' => 'App\\Framework\\Reflection\\WrappedReflectionParameter', 'reflectiontype' => 'ReflectionType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependentsOf', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all classes that depend on the given class * @return array */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'constructorcache' => 'App\\Framework\\DI\\Dependency\\ConstructorCache', 'constructorcacheentry' => 'App\\Framework\\DI\\Dependency\\ConstructorCacheEntry', 'dependency' => 'App\\Framework\\DI\\Dependency\\Dependency', 'dependencycollection' => 'App\\Framework\\DI\\Dependency\\DependencyCollection', 'dependencytype' => 'App\\Framework\\DI\\Dependency\\DependencyType', 'resolvedparameter' => 'App\\Framework\\DI\\Dependency\\ResolvedParameter', 'parameterresolutionexception' => 'App\\Framework\\DI\\Exceptions\\ParameterResolutionException', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionparameter' => 'App\\Framework\\Reflection\\WrappedReflectionParameter', 'reflectiontype' => 'ReflectionType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/CyclicDependencyException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Exceptions\\CyclicDependencyException', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependencyChain', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/LazyLoadingException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Exceptions\\LazyLoadingException', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Exceptions/ParameterResolutionException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Exceptions\\ParameterResolutionException', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paramName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependencyChain', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'code', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/Initializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'contexts', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @var ContextType[]|null */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'contexttype' => 'App\\Framework\\Context\\ContextType', ), 'constUses' => array ( ), )), 'type' => '?array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'contexts', 'type' => 'App\\Framework\\Context\\ContextType', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allowsContext', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Context\\ContextType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_METHOD', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerDependencyGraph.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\InitializerDependencyGraph', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dependency Graph für Initializer-Ausführung * Analysiert Dependencies und sorgt für korrekte Ausführungsreihenfolge */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addInitializer', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'returnType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'methodName', 'type' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExecutionOrder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet die optimale Ausführungsreihenfolge basierend auf Dependencies * @return array Sortierte Liste von Return-Types */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasNode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Node für den gegebenen Return-Type existiert */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'returnType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt einen spezifischen Node zurück */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'returnType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNodes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Nodes zurück * * @return array */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNodesAsArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Nodes als Array zurück (backward compatibility) * * @deprecated Use getNodes() for DependencyGraphNode objects * @return array */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InitializerMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\InitializerMapper', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Core\\AttributeMapper', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'map', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionTarget', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass|App\\Framework\\Reflection\\WrappedReflectionMethod', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeInstance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/InstanceRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\InstanceRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verwaltet alle instanziierten Objekte und Singletons */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSingleton', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @template T of object * @param class-string $class * @return T|null */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasSingleton', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setSingleton', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markAsSingleton', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMarkedAsSingleton', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInstance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasInstance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setInstance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forget', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param class-string $class */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flush', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllRegistered', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSingletons', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/LazyInstantiator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\LazyInstantiator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Behandelt Lazy Loading von Objekten */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'closure' => 'Closure', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instanceCreator', 'type' => 'Closure', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'canUseLazyLoading', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\DI\\InstanceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createLazyInstance', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forgetFactory', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flushFactories', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/MethodInvoker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\MethodInvoker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt Methoden auf beliebigen Klassen mit automatischer Dependency Injection aus */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invoke', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Methode auf einer Klasse aus und löst alle Parameter automatisch auf */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'methodName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overrides', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invokeOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Methode auf einer bereits existierenden Instanz aus */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instance', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'methodName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overrides', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invokeStatic', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine statische Methode aus */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionmethod' => 'App\\Framework\\Reflection\\WrappedReflectionMethod', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'methodName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overrides', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/SingletonDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\SingletonDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt ob eine Klasse als Singleton markiert ist */', 'namespace' => 'App\\Framework\\DI', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'instanceRegistry', 'type' => 'App\\Framework\\DI\\InstanceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSingleton', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DI/ValueObjects/DependencyGraphNode.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a node in the dependency graph for Initializer processing * * Each node contains information about a service initializer including * the class that provides it, the method to call, and dependencies. */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param string $returnType The type that this initializer returns/provides * @param ClassName $className The class containing the initializer method * @param MethodName $methodName The method name to invoke * @param string[] $dependencies Array of return types this node depends on */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'returnType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'methodName', 'type' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependencies', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a node from legacy array format * * @param string $returnType * @param array{class: string, method: string, dependencies?: string[]} $nodeData * @return self */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'returnType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'nodeData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to legacy array format for backward compatibility * * @return array{class: string, method: string, dependencies: string[]} */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this node has any dependencies */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependsOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this node depends on a specific return type */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'returnType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a new node with additional dependencies * * @param string[] $additionalDependencies */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalDependencies', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the fully qualified class name as string */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMethodName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the method name as string */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a human-readable string representation */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDebugInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get debug information * * @return array{return_type: string, class: string, method: string, dependencies: string[], has_dependencies: bool} */', 'namespace' => 'App\\Framework\\DI\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncAwareConnection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\AsyncAwareConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Decorator der jede ConnectionInterface-Implementierung um async Property erweitert * * Usage: $db->async->queryMultiple([...]) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'asynccapable' => 'App\\Framework\\Database\\Contracts\\AsyncCapable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', 1 => 'App\\Framework\\Database\\Contracts\\AsyncCapable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncService', 'type' => 'App\\Framework\\Async\\AsyncService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'async', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get async adapter for parallel operations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'asynccapable' => 'App\\Framework\\Database\\Contracts\\AsyncCapable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\AsyncDatabaseAdapter', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWrappedConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get wrapped connection instance */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'asynccapable' => 'App\\Framework\\Database\\Contracts\\AsyncCapable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics including async metrics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'asynccapable' => 'App\\Framework\\Database\\Contracts\\AsyncCapable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseAdapter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\AsyncDatabaseAdapter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Async Adapter für Database - Fluent API Style * * Provides async operations as property access: $db->async->queryMultiple() */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncService', 'type' => 'App\\Framework\\Async\\AsyncService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute query asynchronously */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute queryOne asynchronously */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute queryScalar asynchronously */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute queryColumn asynchronously */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute statement asynchronously */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute multiple queries in parallel */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'aggregate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel data aggregation from multiple tables */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namedQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batchInsert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch insert operations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rows', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batchUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch update operations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'updates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyColumn', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'readAhead', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel read-ahead for related data */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryReplicas', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel replica queries (if ReadWriteConnection is used) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'transactionWithTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Transaction with timeout */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTableStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel table statistics collection */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseBuilder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\AsyncDatabaseBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fluent Builder für AsyncDatabase Operations * * Vereinfacht die Erstellung von komplexen parallelen Database Operations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'db', 'type' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'select', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge SELECT Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectOne', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge SELECT One Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectColumn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge SELECT Column Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectScalar', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge SELECT Scalar Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge COUNT Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sum', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge SUM Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'avg', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge AVG Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'max', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge MAX Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'min', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Füge MIN Query hinzu */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'where', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setze Timeout für alle Queries */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führe alle Queries in einer Transaktion aus */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führe alle Queries parallel aus */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeAsReadAhead', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führe als Read-Ahead aus (mit Timeout Protection) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset Builder für Wiederverwendung */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstelle neuen Builder */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'db', 'type' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashboardMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Helper für Dashboard Metrics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'userAnalytics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Helper für User Analytics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'productAnalytics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Helper für Product Analytics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'productId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'systemHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Helper für System Health Metrics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ecommerceAnalytics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Helper für E-commerce Analytics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'date', 'type' => 'DateTime', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'App\\Framework\\Database\\asyncDb', 'phpDoc' => NULL, 'byRef' => false, 'returnType' => 'App\\Framework\\Database\\AsyncDatabaseBuilder', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'db', 'type' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/AsyncDatabaseDecorator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Async Decorator für Database ConnectionInterface * * Erweitert jede Database Connection um asynchrone Fähigkeiten: * - Parallel read queries across replicas * - Batch insert/update operations * - Non-blocking writes * - Parallel data aggregation * - Read-ahead caching * - Connection pool utilization */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncService', 'type' => 'App\\Framework\\Async\\AsyncService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryAsync', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute query asynchronously */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Async\\AsyncPromise', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute multiple queries in parallel */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'aggregate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel data aggregation from multiple tables */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namedQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batchInsert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch insert operations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rows', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batchUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch update operations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'updates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyColumn', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'readAhead', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel read-ahead for related data */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeAsync', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Non-blocking write operations (fire and forget) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryReplicas', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel replica queries (if ReadWriteConnection is used) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimisticUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimistic locking with retry */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conditions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionColumn', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'transactionWithTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Transaction with timeout */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTableStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parallel table statistics collection */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get database statistics including async metrics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWrappedConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying connection */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'asyncpromise' => 'App\\Framework\\Async\\AsyncPromise', 'asyncservice' => 'App\\Framework\\Async\\AsyncService', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Column.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'primary', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'autoIncrement', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'nullable', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_PROPERTY', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Entity.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'idColumn', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_CLASS', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Attributes/Type.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Type', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'foreignKey', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'localKey', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'Attribute', 'args' => array ( 0 => '\\Attribute::TARGET_PROPERTY', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupMetadata.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Backup\\BackupMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Metadata for backup files */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filename', 'type' => 'App\\Framework\\Filesystem\\FilePath|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'originalSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressedSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encrypted', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressed', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'checksum', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'createdAt', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'App\\Framework\\Database\\Backup\\BackupOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFilePath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get filename as FilePath object */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Filesystem\\FilePath', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFilename', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get filename as string */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCompressionRatio', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compression ratio as percentage */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSpaceSaved', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get space saved by compression */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEfficientlyCompressed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if backup is efficiently compressed (>10% reduction) */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get backup summary string */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array{filename: string, originalSize: int, compressedSize: int, encrypted: bool, compressed: bool, checksum: string, createdAt: string, options: array} * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from an array (for JSON deserialization) */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupOptions.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Backup\\BackupOptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configuration options for database backups */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeStructure', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeData', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compress', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'encrypt', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includeTables', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludeTables', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'singleTransaction', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routines', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'triggers', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'events', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxMemory', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'structureOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create options for structure-only backup */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dataOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create options for data-only backup */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'encrypted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create options for secure encrypted backup */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'quick', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create options for quick uncompressed backup */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create options with specific table inclusion */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'excludingTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create options excluding specific tables */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withEncryption', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable encryption */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Backup\\BackupResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Result of a backup or restore operation */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'success', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => '?App\\Framework\\Database\\Backup\\BackupMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'success', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Backup\\BackupMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'failure', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/BackupRetentionPolicy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Backup\\BackupRetentionPolicy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Retention policy for backup cleanup */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxAgeDays', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keepDaily', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keepWeekly', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keepMonthly', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Default retention policy for production */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Retention policy for development */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'conservative', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Conservative retention policy */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'minimal', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Minimal retention policy */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/Console/BackupCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Backup\\Console\\BackupCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Console commands for database backup management */', 'namespace' => 'App\\Framework\\Database\\Backup\\Console', 'uses' => array ( 'consolecolor' => 'App\\Framework\\Console\\ConsoleColor', 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'consoleinput' => 'App\\Framework\\Console\\ConsoleInput', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'backupoptions' => 'App\\Framework\\Database\\Backup\\BackupOptions', 'backupretentionpolicy' => 'App\\Framework\\Database\\Backup\\BackupRetentionPolicy', 'databasebackupservice' => 'App\\Framework\\Database\\Backup\\DatabaseBackupService', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'backupService', 'type' => 'App\\Framework\\Database\\Backup\\DatabaseBackupService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'backup:create\'', 1 => '\'Create a database backup\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'restore', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'backup:restore\'', 1 => '\'Restore database from backup\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'list', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'backup:list\'', 1 => '\'List all available backups\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanup', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'backup:cleanup\'', 1 => '\'Clean up old backups based on retention policy\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'verify', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'backup:verify\'', 1 => '\'Verify backup integrity\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Backup/DatabaseBackupService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Backup\\DatabaseBackupService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Comprehensive database backup service with encryption and compression */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'clock' => 'App\\Framework\\DateTime\\Clock', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'runtimeexception' => 'RuntimeException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'secretManager', 'type' => '?App\\Framework\\Config\\SecretManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => '?App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'randomGenerator', 'type' => '?App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'backupPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createBackup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a database backup with optional encryption and compression */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'clock' => 'App\\Framework\\DateTime\\Clock', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'runtimeexception' => 'RuntimeException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Backup\\BackupResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'App\\Framework\\Database\\Backup\\BackupOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'restoreBackup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Restore database from backup file */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'clock' => 'App\\Framework\\DateTime\\Clock', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'runtimeexception' => 'RuntimeException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Backup\\BackupResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'backupPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => '?App\\Framework\\Database\\Backup\\BackupOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listBackups', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * List all available backups with metadata */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'clock' => 'App\\Framework\\DateTime\\Clock', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'runtimeexception' => 'RuntimeException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanupBackups', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Delete old backups based on retention policy */', 'namespace' => 'App\\Framework\\Database\\Backup', 'uses' => array ( 'secretmanager' => 'App\\Framework\\Config\\SecretManager', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'clock' => 'App\\Framework\\DateTime\\Clock', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', 'runtimeexception' => 'RuntimeException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'policy', 'type' => 'App\\Framework\\Database\\Backup\\BackupRetentionPolicy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/BatchRelationLoader.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\BatchRelationLoader', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'preloadRelation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Preload a specific relation for multiple entities in batches * * @param array $entities * @param string $relationName */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'propertymetadata' => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relationName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheAdapterStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\CacheAdapterStrategy', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheStrategy', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyPrefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttlSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidatePattern', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withTags', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory-Methode für TaggedCache wenn verfügbar */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyPrefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidateByTable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidierung basierend auf Tabellen-Tags */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\CacheMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache performance metrics and monitoring */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'cachemetricssnapshot' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', 'cacheoverviewmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', 'cacheperformancemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', 'cacherecommendation' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', 'entitycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 'entitymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', 'memoryusagemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', 'querycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 'querymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', 'recommendationcategory' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationCategory', 'recommendationimpact' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationImpact', 'recommendationtype' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationType', 'regionmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheManager', 'type' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => 'App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive cache metrics */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'cachemetricssnapshot' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', 'cacheoverviewmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', 'cacheperformancemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', 'cacherecommendation' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', 'entitycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 'entitymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', 'memoryusagemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', 'querycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 'querymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', 'recommendationcategory' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationCategory', 'recommendationimpact' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationImpact', 'recommendationtype' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationType', 'regionmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordEntityAccess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record entity access for metrics */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'cachemetricssnapshot' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', 'cacheoverviewmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', 'cacheperformancemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', 'cacherecommendation' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', 'entitycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 'entitymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', 'memoryusagemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', 'querycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 'querymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', 'recommendationcategory' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationCategory', 'recommendationimpact' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationImpact', 'recommendationtype' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationType', 'regionmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheHit', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'accessTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset all metrics */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'cachemetricssnapshot' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', 'cacheoverviewmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', 'cacheperformancemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', 'cacherecommendation' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', 'entitycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 'entitymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', 'memoryusagemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', 'querycachemetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 'querymetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', 'recommendationcategory' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationCategory', 'recommendationimpact' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationImpact', 'recommendationtype' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationType', 'regionmetrics' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheRegion.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\CacheRegion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache region for organizing cache entries by entity types */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultTtl', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fastChanging', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache region for fast-changing data (short TTL) */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'slowChanging', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache region for slow-changing data (long TTL) */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'readOnly', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache region for read-only data (very long TTL) */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'disabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create disabled cache region */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getKeyPrefix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache key prefix for this region */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntityKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get entity cache key */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query cache key */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCollectionKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get collection cache key */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntityClassPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get pattern for invalidating all entities of a class */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegionPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get pattern for invalidating all cache entries in this region */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\CacheStrategy', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert einen Wert im Cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttlSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Lädt einen Wert aus dem Cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Schlüssel im Cache existiert */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht einen Schlüssel aus dem Cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidatePattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidiert Cache-Einträge basierend auf Pattern */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht alle Cache-Einträge */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Cache-Statistiken zurück */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/CacheWarmupStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\CacheWarmupStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache warmup strategies for preloading frequently accessed data */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheManager', 'type' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'warmUpEntities', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Warm up cache with commonly accessed entities */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'warmupStrategies', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefaultStrategies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get default warmup strategies for common entity types */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCriticalStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create warmup strategy for specific entity IDs */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityIds', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttlSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\EntityCacheKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache key generator for entities */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'region', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for single entity */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'region', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for entity collection */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'orderBy', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for query result */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forRelation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for relation */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ownerClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ownerId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relationName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate the actual cache key string */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toVersionedString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get versioned cache key (includes entity version for optimistic locking) */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntityClassPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get invalidation pattern for entity class */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'region', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRelationPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get invalidation pattern for relations */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ownerClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ownerId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/EntityCacheManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Manages entity caching with smart invalidation and TTL strategies */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find entity with cache check */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseLoader', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find entities collection with caching */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'orderBy', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseLoader', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cacheEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache an entity */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Evict entity from cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntityClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Evict all entities of a class */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'warmUpCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Warm up cache with commonly accessed entities */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'warmUpStrategies', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheHitRatio', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache hit ratio for performance monitoring */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Register cache strategy for specific entity type */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Database\\Cache\\CacheStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable or disable caching */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if caching is enabled */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/NullSecondLevelCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\NullSecondLevelCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Null implementation of second-level cache (disabled caching) */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntityClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegionStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\QueryCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query result cache with smart invalidation */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute query with caching */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseExecutor', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidateForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidate queries that might be affected by entity changes */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query cache statistics */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all query cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable or disable query caching */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if query caching is enabled */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/QueryCacheKey.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matches', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'containsTable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/RedisSecondLevelCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\RedisSecondLevelCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Redis-based second-level cache implementation */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializer', 'type' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictQueryResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictCollection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntityClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegionStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerRegion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Register cache regions for different entity types */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'region', 'type' => 'App\\Framework\\Database\\Cache\\CacheRegion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityCreated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity creation event */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityUpdated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity update event */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityDeleted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity deletion event */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory for creating second-level cache components */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'redisconnectioninterface' => 'App\\Framework\\Redis\\RedisConnectionInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'redisConnection', 'type' => 'App\\Framework\\Redis\\RedisConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCacheManager', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create complete second-level cache stack */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'rediscache' => 'App\\Framework\\Cache\\Driver\\RedisCache', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'entityserializer' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'redisconnectioninterface' => 'App\\Framework\\Redis\\RedisConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'redisConnection', 'type' => 'App\\Framework\\Redis\\RedisConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SecondLevelCacheInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\SecondLevelCacheInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Second-Level Cache for entity data caching */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache an entity by its class and ID */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get an entity from cache by class and ID */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if entity exists in cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove entity from cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putQueryResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache query results */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query results from cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasQueryResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if query result exists in cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictQueryResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove query result from cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache collection results */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get collection from cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection exists in cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove collection from cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'evictEntityClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidate all cache entries for a specific entity class */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all second-level cache */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache statistics */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegionStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache regions statistics */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/SimpleCacheStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Einfache Cache-Strategy als Fallback wenn kein Framework-Cache verfügbar */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Cache\\CacheStrategy', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyPrefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttlSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'App\\Framework\\Database\\Cache\\QueryCacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidatePattern', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bereinigt abgelaufene Einträge */', 'namespace' => 'App\\Framework\\Database\\Cache', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheMetricsSnapshot.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheMetricsSnapshot', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Comprehensive cache metrics snapshot */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overview', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performance', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queries', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'regions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheOverviewMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheOverviewMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache overview metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalRequests', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalHits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalMisses', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatio', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'uptime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requestsPerSecond', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPerformingWell', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'needsAttention', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CachePerformanceMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CachePerformanceMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache performance metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityCache', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryCache', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memory', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverallHitRatio', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/CacheRecommendation.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\CacheRecommendation', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache optimization recommendation value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'impact', 'type' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationImpact', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isActionable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityCacheMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityCacheMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entity-specific cache metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'misses', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatio', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'puts', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'evictions', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalRequests', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEvictionRate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/EntityMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\EntityMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Individual entity metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'misses', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatio', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageAccessTime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalAccess', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPopular', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEfficient', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/MemoryUsageMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\MemoryUsageMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory usage metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'current', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'peak', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'usagePercentage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNearLimit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCritical', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAvailable', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryCacheMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryCacheMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query cache metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hits', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'misses', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRatio', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalRequests', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/QueryMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\QueryMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query cache metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalCachedQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'topQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasPerformanceIssues', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RecommendationCategory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationCategory', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache recommendation categories */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PERFORMANCE', 'value' => '\'performance\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEMORY', 'value' => '\'memory\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONFIGURATION', 'value' => '\'configuration\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OPTIMIZATION', 'value' => '\'optimization\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SECURITY', 'value' => '\'security\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RecommendationImpact.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationImpact', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache recommendation impact levels */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'POSITIVE', 'value' => '\'positive\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RecommendationType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RecommendationType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache recommendation types */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WARNING', 'value' => '\'warning\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SUCCESS', 'value' => '\'success\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INFO', 'value' => '\'info\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Cache/ValueObjects/RegionMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Cache\\ValueObjects\\RegionMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache region metrics value object */', 'namespace' => 'App\\Framework\\Database\\Cache\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultTtl', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'efficiencyScore', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPerformingWell', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'needsOptimization', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ClearProfilingDataCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Commands\\ClearProfilingDataCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'db:profiling:clear\'', 'description' => '\'Clear all database profiling data and statistics\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/DatabaseOptimizeCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Commands\\DatabaseOptimizeCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Command to optimize database tables and perform maintenance operations */', 'namespace' => 'App\\Framework\\Database\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimize database tables * * @param string $connection The database connection to use * @param string|null $table The table to optimize, or null for all tables * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:optimize\'', 1 => '\'Optimize database tables\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyze', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze database tables * * @param string $connection The database connection to use * @param string|null $table The table to analyze, or null for all tables * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:analyze\'', 1 => '\'Analyze database tables\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'check', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check database tables * * @param string $connection The database connection to use * @param string|null $table The table to check, or null for all tables * @param bool $extended Whether to perform an extended check * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extended', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:check\'', 1 => '\'Check database tables for errors\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'status', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Show table status * * @param string $connection The database connection to use * @param string|null $table The table to show status for, or null for all tables * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:table-status\'', 1 => '\'Show database table status\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'indexes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Show index statistics * * @param string $connection The database connection to use * @param string|null $table The table to show index statistics for, or null for all tables * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:indexes\'', 1 => '\'Show database index statistics\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ExportProfilingDataCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Commands\\ExportProfilingDataCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'db:profiling:export\'', 'description' => '\'Export database profiling data to various formats (json, html)\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Commands/ShowProfilingStatsCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Commands\\ShowProfilingStatsCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'db:profiling:stats\'', 'description' => '\'Show database profiling statistics and reports\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/CacheConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Config\\CacheConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configuration for database second-level cache */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'defaultTtl', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'queryCacheTtl', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultTtl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryCache', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryCacheTtl', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'regions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabledEntityClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'disabledEntityClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration for development environment */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration for production environment */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'disabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create disabled cache configuration */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityCacheEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if entity class has caching enabled */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegionForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache region for entity class */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driverConfig', 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'poolConfig', 'type' => 'App\\Framework\\Database\\Config\\PoolConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'readWriteConfig', 'type' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheConfig', 'type' => 'App\\Framework\\Database\\Config\\CacheConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profilingConfig', 'type' => 'App\\Framework\\Database\\Profiling\\ProfilingConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/DatabaseConfigInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Config\\DatabaseConfigInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'env', 'type' => 'App\\Framework\\Config\\Environment', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/LoadBalancingStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Load balancing strategies for read replicas */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ROUND_ROBIN', 'value' => '\'round_robin\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RANDOM', 'value' => '\'random\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LEAST_CONNECTIONS', 'value' => '\'least_connections\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WEIGHTED', 'value' => '\'weighted\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RESPONSE_TIME', 'value' => '\'response_time\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/PoolConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Config\\PoolConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConnections', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minConnections', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionTimeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthCheckIntervalSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxIdleTimeSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableHealthChecks', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableWarmup', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableMetrics', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Config/ReadWriteConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $readConnections */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'readConnections', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'loadBalancingStrategy', 'type' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'stickySessions', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxLagSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failoverEnabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthCheckIntervalSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'readPreference', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionRetryAttempts', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasReadReplicas', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReadReplicaCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnectionWeight', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get weight for specific read connection config */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'configIndex', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaxConnections', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get max connections for specific read connection config */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'configIndex', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllWeights', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all connection weights indexed by config position */', 'namespace' => 'App\\Framework\\Database\\Config', 'uses' => array ( 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ConnectionInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncService', 'type' => '?App\\Framework\\Async\\AsyncService', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableAsync', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ConnectionInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionMetadata.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ConnectionMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Connection metadata for advanced pool management */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'createdAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lastUsedAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lastHealthCheckAt', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHealthy', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'failedQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageQueryTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordQuery', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'successful', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateHealthStatus', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHealthy', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isIdle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxIdleTimeSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'needsHealthCheck', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthCheckIntervalSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ConnectionPool.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ConnectionPool', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driverConfig', 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'poolConfig', 'type' => 'App\\Framework\\Database\\Config\\PoolConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\PooledConnection', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'releaseConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'closeConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record query execution for metrics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'poolconfig' => 'App\\Framework\\Database\\Config\\PoolConfig', 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'timer' => 'App\\Framework\\DateTime\\Timer', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'successful', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forceHealthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Force health check on all connections */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'poolconfig' => 'App\\Framework\\Database\\Config\\PoolConfig', 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'timer' => 'App\\Framework\\DateTime\\Timer', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnectionMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get connection metadata for debugging */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'poolconfig' => 'App\\Framework\\Database\\Config\\PoolConfig', 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'timer' => 'App\\Framework\\DateTime\\Timer', 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__destruct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Contracts/AsyncCapable.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Contracts\\AsyncCapable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für Database-Implementierungen mit Async-Unterstützung */', 'namespace' => 'App\\Framework\\Database\\Contracts', 'uses' => array ( 'asyncdatabaseadapter' => 'App\\Framework\\Database\\AsyncDatabaseAdapter', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'async', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get async adapter for parallel operations */', 'namespace' => 'App\\Framework\\Database\\Contracts', 'uses' => array ( 'asyncdatabaseadapter' => 'App\\Framework\\Database\\AsyncDatabaseAdapter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\AsyncDatabaseAdapter', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criteria.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Criteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Main criteria interface for building database queries */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a criterion to this criteria */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criterion', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setProjection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the projection (SELECT clause) */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'projection', 'type' => 'App\\Framework\\Database\\Criteria\\Projection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addOrder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add an order by clause */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'order', 'type' => 'App\\Framework\\Database\\Criteria\\Order', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setMaxResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set maximum number of results */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxResults', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setFirstResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set first result offset */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'firstResult', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCriteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all criteria (WHERE conditions) */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProjection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get projection */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOrders', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get orders */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaxResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get max results */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFirstResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get first result offset */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/CriteriaQuery.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query builder that converts Criteria to SQL */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'App\\Framework\\Database\\Criteria\\Criteria', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Build the complete SQL query */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all parameters for prepared statement */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Criterion.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Criterion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base interface for all query criteria (WHERE conditions) */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert criterion to SQL WHERE clause */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameter values for prepared statement */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/DetachedCriteria.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detached criteria implementation - can be used without session */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criteria', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criterion', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setProjection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'projection', 'type' => 'App\\Framework\\Database\\Criteria\\Projection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addOrder', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'order', 'type' => 'App\\Framework\\Database\\Criteria\\Order', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setMaxResults', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxResults', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setFirstResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'firstResult', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCriteria', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProjection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOrders', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaxResults', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFirstResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Example/CriteriaUsageExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Example\\CriteriaUsageExample', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example usage of the Criteria API */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findUsersByEmail', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Basic equality query */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findActiveUsersWithPosts', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Complex query with multiple conditions */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findUsersByAge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Range query */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minAge', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxAge', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findUsersByIds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IN query with multiple values */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userIds', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'searchUsersByName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * LIKE query for pattern matching */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namePattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findVipOrActiveUsers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Complex logical conditions */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findPremiumUsers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Multiple criteria with allOf/anyOf */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Projection queries (aggregates) */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'countActiveUsers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count matching entities */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUsersPage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Pagination example */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'page', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pageSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findUserByEmail', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find single entity */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Example', 'uses' => array ( 'detachedcriteria' => 'App\\Framework\\Database\\Criteria\\DetachedCriteria', 'order' => 'App\\Framework\\Database\\Criteria\\Order', 'projections' => 'App\\Framework\\Database\\Criteria\\Projections', 'restrictions' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Criteria\\Example\\User', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/BetweenExpression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * BETWEEN expression for range queries */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Expression', 'uses' => array ( 'criterion' => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'low', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'high', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/InExpression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IN expression for matching against multiple values */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Expression', 'uses' => array ( 'criterion' => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'values', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LikeExpression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * LIKE expression for pattern matching */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Expression', 'uses' => array ( 'criterion' => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'caseSensitive', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/LogicalExpression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logical expression for combining criteria with AND/OR */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Expression', 'uses' => array ( 'criterion' => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'left', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'right', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operator', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/NotExpression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * NOT expression for negating criteria */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Expression', 'uses' => array ( 'criterion' => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criterion', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Expression/SimpleExpression.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Simple property comparison expression */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Expression', 'uses' => array ( 'criterion' => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Criterion', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operator', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Order.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Order', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Order specification for sorting results */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'asc', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'desc', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Projection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for query projections (SELECT clause) */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert projection to SQL SELECT clause */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAliases', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get aliases for result mapping */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/AggregateProjection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aggregate function projection (COUNT, SUM, AVG, etc.) */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Projection', 'uses' => array ( 'projection' => 'App\\Framework\\Database\\Criteria\\Projection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'function', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAliases', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/ProjectionList.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * List of multiple projections */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Projection', 'uses' => array ( 'projection' => 'App\\Framework\\Database\\Criteria\\Projection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'projections', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @var Projection[] */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Projection', 'uses' => array ( 'projection' => 'App\\Framework\\Database\\Criteria\\Projection', ), 'constUses' => array ( ), )), 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'projections', 'type' => 'App\\Framework\\Database\\Criteria\\Projection', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'projection', 'type' => 'App\\Framework\\Database\\Criteria\\Projection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAliases', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projection/PropertyProjection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Simple property projection */', 'namespace' => 'App\\Framework\\Database\\Criteria\\Projection', 'uses' => array ( 'projection' => 'App\\Framework\\Database\\Criteria\\Projection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Criteria\\Projection', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAliases', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Projections.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Projections', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Static factory class for creating projections */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'property', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Property projection */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * COUNT aggregate */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'countDistinct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * COUNT DISTINCT aggregate */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sum', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SUM aggregate */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'avg', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * AVG aggregate */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'min', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * MIN aggregate */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'max', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * MAX aggregate */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'projectionList', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Projection list */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'projections', 'type' => 'App\\Framework\\Database\\Criteria\\Projection', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rowCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Row count projection (shorthand) */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'aggregateprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\AggregateProjection', 'projectionlist' => 'App\\Framework\\Database\\Criteria\\Projection\\ProjectionList', 'propertyprojection' => 'App\\Framework\\Database\\Criteria\\Projection\\PropertyProjection', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Projection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Criteria/Restrictions.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Criteria\\Restrictions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Static factory class for creating common restrictions */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'eq', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Equality restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ne', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Not equal restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Less than restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'le', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Less than or equal restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'gt', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Greater than restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Greater than or equal restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'like', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * LIKE restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'caseSensitive', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ilike', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Case-insensitive LIKE restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'in', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IN restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'values', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'notIn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * NOT IN restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'values', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'between', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * BETWEEN restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'low', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'high', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNull', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IS NULL restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isNotNull', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IS NOT NULL restriction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'and', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * AND conjunction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'left', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'right', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'or', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * OR disjunction */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'left', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'right', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'not', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * NOT negation */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criterion', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allOf', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Conjunction of multiple criteria */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'anyOf', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Disjunction of multiple criteria */', 'namespace' => 'App\\Framework\\Database\\Criteria', 'uses' => array ( 'betweenexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\BetweenExpression', 'inexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\InExpression', 'likeexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LikeExpression', 'logicalexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\LogicalExpression', 'notexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\NotExpression', 'simpleexpression' => 'App\\Framework\\Database\\Criteria\\Expression\\SimpleExpression', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Criteria\\Criterion', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'App\\Framework\\Database\\Criteria\\Criterion', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\DatabaseFactory', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middlewareConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createDirectConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createLazyConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalMiddleware', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createRetryableConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retryDelayMs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createRobustConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middlewareConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createPureLazyConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLazyConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forceLazyInitialization', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCacheStrategyFromCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstelle Cache-Strategy mit direkter CacheInterface-Instanz */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheadapterstrategy' => 'App\\Framework\\Database\\Cache\\CacheAdapterStrategy', 'cachestrategy' => 'App\\Framework\\Database\\Cache\\CacheStrategy', 'simplecachestrategy' => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', 'driver' => 'App\\Framework\\Database\\Driver\\Driver', 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'drivertype' => 'App\\Framework\\Database\\Driver\\DriverType', 'mysqldriver' => 'App\\Framework\\Database\\Driver\\MysqlDriver', 'postgresdriver' => 'App\\Framework\\Database\\Driver\\PostgresDriver', 'sqlitedriver' => 'App\\Framework\\Database\\Driver\\SqliteDriver', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'cachemiddleware' => 'App\\Framework\\Database\\Middleware\\CacheMiddleware', 'healthcheckmiddleware' => 'App\\Framework\\Database\\Middleware\\HealthCheckMiddleware', 'middlewarepipeline' => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 'retrymiddleware' => 'App\\Framework\\Database\\Middleware\\RetryMiddleware', 'mysql' => 'Pdo\\Mysql', 'pgsql' => 'Pdo\\Pgsql', 'sqlite' => 'Pdo\\Sqlite', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Cache\\CacheStrategy', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyPrefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tags', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCachedConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createCachedConnectionWithCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createConnectionWithCustomCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstelle Connection mit externem Cache-System */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheadapterstrategy' => 'App\\Framework\\Database\\Cache\\CacheAdapterStrategy', 'cachestrategy' => 'App\\Framework\\Database\\Cache\\CacheStrategy', 'simplecachestrategy' => 'App\\Framework\\Database\\Cache\\SimpleCacheStrategy', 'driver' => 'App\\Framework\\Database\\Driver\\Driver', 'driverconfig' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'drivertype' => 'App\\Framework\\Database\\Driver\\DriverType', 'mysqldriver' => 'App\\Framework\\Database\\Driver\\MysqlDriver', 'postgresdriver' => 'App\\Framework\\Database\\Driver\\PostgresDriver', 'sqlitedriver' => 'App\\Framework\\Database\\Driver\\SqliteDriver', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'cachemiddleware' => 'App\\Framework\\Database\\Middleware\\CacheMiddleware', 'healthcheckmiddleware' => 'App\\Framework\\Database\\Middleware\\HealthCheckMiddleware', 'middlewarepipeline' => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 'retrymiddleware' => 'App\\Framework\\Database\\Middleware\\RetryMiddleware', 'mysql' => 'Pdo\\Mysql', 'pgsql' => 'Pdo\\Pgsql', 'sqlite' => 'Pdo\\Sqlite', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'keyPrefix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttl', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFullFeaturedConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middlewareConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createProductionConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => '?App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middlewareConfig', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/DatabaseManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\DatabaseManager', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrationsPath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => '?App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPooledConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\PooledConnection', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReadWriteConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ReadWriteConnection', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'migrate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrationsPath', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrationsPath', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'steps', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMigrationStatus', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrationsPath', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerWithProfilingDashboard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Register this database manager with a profiling dashboard */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'databaseconfig' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'migrationloader' => 'App\\Framework\\Database\\Migration\\MigrationLoader', 'migrationrunner' => 'App\\Framework\\Database\\Migration\\MigrationRunner', 'profilesummary' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'profilingconnection' => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dashboard', 'type' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling statistics for this database manager */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'databaseconfig' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'migrationloader' => 'App\\Framework\\Database\\Migration\\MigrationLoader', 'migrationrunner' => 'App\\Framework\\Database\\Migration\\MigrationRunner', 'profilesummary' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'profilingconnection' => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling summary for this database manager */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'databaseconfig' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'migrationloader' => 'App\\Framework\\Database\\Migration\\MigrationLoader', 'migrationrunner' => 'App\\Framework\\Database\\Migration\\MigrationRunner', 'profilesummary' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'profilingconnection' => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Profiling\\ProfileSummary', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProfilingEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if profiling is enabled */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'databaseconfig' => 'App\\Framework\\Database\\Config\\DatabaseConfig', 'migrationloader' => 'App\\Framework\\Database\\Migration\\MigrationLoader', 'migrationrunner' => 'App\\Framework\\Database\\Migration\\MigrationRunner', 'profilesummary' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'profilingconnection' => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnectionPoolStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Driver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\Driver', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'dsn', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'options', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'config', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => true, 'attributes' => array ( ), 'hooks' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertyHookNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'abstract' => true, 'final' => false, 'short' => false, 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driverType', 'type' => 'App\\Framework\\Database\\Driver\\DriverType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'host', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'port', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'database', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'username', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'password', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'charset', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'weight', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxConnections', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/DriverType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\DriverType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MYSQL', 'value' => '\'mysql\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PGSQL', 'value' => '\'pgsql\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SQLITE', 'value' => '\'sqlite\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/MysqlDriver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\MysqlDriver', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Driver\\Driver', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'dsn', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'options', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/DatabaseOptimizer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for database-specific optimizations */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimizeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimize a table or all tables in the database * * @param string|null $table The table to optimize, or null for all tables * @return array Optimization results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze a table or all tables in the database * * @param string|null $table The table to analyze, or null for all tables * @return array Analysis results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check a table or all tables in the database * * @param string|null $table The table to check, or null for all tables * @param bool $extended Whether to perform an extended check * @return array Check results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extended', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTableStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get table status information * * @param string|null $table The table to get status for, or null for all tables * @return array> Table status by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndexStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index statistics * * @param string|null $table The table to get index statistics for, or null for all tables * @return array>> Index statistics by table and index */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/MySQLOptimizer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * MySQL-specific database optimizations */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimizeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimize a table or all tables in the database * * @param string|null $table The table to optimize, or null for all tables * @return array Optimization results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze a table or all tables in the database * * @param string|null $table The table to analyze, or null for all tables * @return array Analysis results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check a table or all tables in the database * * @param string|null $table The table to check, or null for all tables * @param bool $extended Whether to perform an extended check * @return array Check results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extended', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'repairTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repair a table or all tables in the database * * @param string|null $table The table to repair, or null for all tables * @param bool $quick Whether to perform a quick repair * @return array Repair results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'quick', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTableStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get table status information * * @param string|null $table The table to get status for, or null for all tables * @return array> Table status by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndexStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index statistics * * @param string|null $table The table to get index statistics for, or null for all tables * @return array>> Index statistics by table and index */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryCacheStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query cache statistics * * @return array Query cache statistics */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBufferPoolStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get buffer pool statistics * * @return array Buffer pool statistics */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueryLogStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow query log status * * @return array Slow query log status */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setSlowQueryLog', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable or disable the slow query log * * @param bool $enabled Whether to enable the slow query log * @param float|null $longQueryTime The time threshold for slow queries (in seconds) * @param string|null $logFile The path to the slow query log file * @return bool Whether the operation was successful */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'longQueryTime', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logFile', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/PostgreSQLOptimizer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * PostgreSQL-specific database optimizations */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'schema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimizeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimize a table or all tables in the database * In PostgreSQL, this is equivalent to VACUUM FULL ANALYZE * * @param string|null $table The table to optimize, or null for all tables * @return array Optimization results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze a table or all tables in the database * * @param string|null $table The table to analyze, or null for all tables * @return array Analysis results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check a table or all tables in the database * In PostgreSQL, we use pg_stat_user_tables to get table statistics * * @param string|null $table The table to check, or null for all tables * @param bool $extended Whether to perform an extended check (not used in PostgreSQL) * @return array Check results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extended', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'repairTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repair tables - not directly supported in PostgreSQL * This is a no-op method that returns a message indicating that repair is not needed * * @param string|null $table The table to repair, or null for all tables * @return array Repair results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTableStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get table status information * * @param string|null $table The table to get status for, or null for all tables * @return array> Table status by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndexStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index statistics * * @param string|null $table The table to get index statistics for, or null for all tables * @return array>> Index statistics by table and index */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get database cache statistics * * @return array Cache statistics */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDatabaseSettings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get database settings * * @param string|null $pattern Pattern to filter settings * @return array Database settings */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLongRunningQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get long-running queries * * @param int $seconds Minimum query duration in seconds * @return array> Long-running queries */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'seconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/Optimization/SQLiteOptimizer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SQLite-specific database optimizations */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Driver\\Optimization\\DatabaseOptimizer', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimizeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimize a table or all tables in the database * In SQLite, this is equivalent to VACUUM * * @param string|null $table The table to optimize, or null for all tables * @return array Optimization results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze a table or all tables in the database * * @param string|null $table The table to analyze, or null for all tables * @return array Analysis results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkTables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check a table or all tables in the database * In SQLite, we use PRAGMA integrity_check * * @param string|null $table The table to check, or null for all tables * @param bool $extended Whether to perform an extended check * @return array Check results by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extended', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTableStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get table status information * * @param string|null $table The table to get status for, or null for all tables * @return array> Table status by table */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndexStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index statistics * * @param string|null $table The table to get index statistics for, or null for all tables * @return array>> Index statistics by table and index */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDatabaseStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get database statistics * * @return array Database statistics */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPragmaSettings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get SQLite PRAGMA settings * * @return array PRAGMA settings */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setPragma', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set a PRAGMA setting * * @param string $pragma The PRAGMA to set * @param mixed $value The value to set * @return bool Whether the operation was successful */', 'namespace' => 'App\\Framework\\Database\\Driver\\Optimization', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pragma', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/PostgresDriver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\PostgresDriver', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Driver\\Driver', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'dsn', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'options', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Driver/SqliteDriver.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Driver\\SqliteDriver', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Driver\\Driver', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'dsn', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'options', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityLoaderInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\EntityLoaderInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'find', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find entity by primary key */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findOneBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find single entity by criteria */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find multiple entities by criteria */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\EntityManager', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\EntityLoaderInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lazyLoader', 'type' => 'App\\Framework\\Database\\LazyLoader', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchRelationLoader', 'type' => 'App\\Framework\\Database\\BatchRelationLoader', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unitOfWork', 'type' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryBuilderFactory', 'type' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityEventManager', 'type' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheManager', 'type' => '?App\\Framework\\Database\\Cache\\EntityCacheManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'find', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entity - standardmäßig lazy loading */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findEager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entity und lädt sie sofort (eager loading) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReference', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Referenz auf Entity (ohne Existenz-Check) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Entities - standardmäßig lazy */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAllEager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Entities und lädt sie sofort */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entities nach Kriterien */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'orderBy', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findOneBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet eine Entity nach Kriterien */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findWithRelations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entities mit vorab geladenen Relationen (N+1 Solution) * * @param string $entityClass * @param array $criteria * @param array $relations Relations to preload [\'comments\', \'author\', etc.] * @param array|null $orderBy * @param int|null $limit * @return array */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'orderBy', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detach', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Utility Methods */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentityMapStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLazyGhost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initializeLazyObject', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateId', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert eine einzigartige ID für Entities */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling statistics if profiling is enabled */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling summary if profiling is enabled */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Profiling\\ProfileSummary', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearProfilingData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear profiling data if profiling is enabled */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setProfilingEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable or disable profiling at runtime */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProfilingEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if profiling is enabled */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert eine Entity (INSERT oder UPDATE) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob eine Entity mit der angegebenen ID existiert */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'insert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt eine neue Entity ein (INSERT) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'update', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktualisiert eine vorhandene Entity (UPDATE) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht eine Entity */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'saveAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert mehrere Entities auf einmal */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'object', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'transaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion in einer Transaktion aus */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByCriteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute criteria query and return entities */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'App\\Framework\\Database\\Criteria\\Criteria', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findOneByCriteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute criteria query and return first result */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'App\\Framework\\Database\\Criteria\\Criteria', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'countByCriteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count entities matching criteria */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'App\\Framework\\Database\\Criteria\\Criteria', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createQueryBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new query builder */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createQueryBuilderFor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a query builder for a specific entity */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 33 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createQueryBuilderForTable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a query builder for a table */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 34 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIdentityMap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the identity map (for QueryBuilder integration) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\IdentityMap', 'parameters' => array ( ), 'attributes' => array ( ), )), 35 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHydrator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the hydrator (for QueryBuilder integration) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\HydratorInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 36 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntityEventManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the entity event manager */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'parameters' => array ( ), 'attributes' => array ( ), )), 37 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordDomainEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a domain event for an entity */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 38 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatchDomainEventsForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatch all domain events for an entity */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 39 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatchAllDomainEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatch all domain events across all entities */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 40 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDomainEventStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get domain event statistics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'singleton' => 'App\\Framework\\Attributes\\Singleton', 'entitycachemanager' => 'App\\Framework\\Database\\Cache\\EntityCacheManager', 'criteria' => 'App\\Framework\\Database\\Criteria\\Criteria', 'criteriaquery' => 'App\\Framework\\Database\\Criteria\\CriteriaQuery', 'entityeventmanager' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'querybuilderfactory' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'selectquerybuilder' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'unitofwork' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Singleton', 'args' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\EntityManagerFactory', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\EntityManager', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheManager', 'type' => '?App\\Framework\\Database\\Cache\\EntityCacheManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/EntityManagerInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\EntityManagerInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\EntityManager', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/DomainEventCollector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\DomainEventCollector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * External collector for domain events using WeakMap * Keeps entities clean as simple value objects with automatic memory management */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a domain event for an entity */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventsForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all recorded domain events for an entity * * @return object[] */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearEventsForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all recorded domain events for an entity * (Optional - WeakMap handles cleanup automatically) */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all recorded domain events across all entities * * @return object[] */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasEventsForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if there are any domain events for an entity */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventsOfTypeForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get domain events of a specific type for an entity * * @template T * @param class-string $eventClass * @return T[] */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventCountForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get count of events for an entity */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalEventCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get total count of all events across all entities */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTrackedEntityCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get count of tracked entities */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityCreatedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event that is fired when an entity is created */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'timestamp', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityOfType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this event is for a specific entity class */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get event metadata */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDeletedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event that is fired when an entity is deleted */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'timestamp', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'deletedData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityOfType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this event is for a specific entity class */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get event metadata */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityDetachedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event that is fired when an entity is detached from the entity manager */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'timestamp', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityOfType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this event is for a specific entity class */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get event metadata */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityEventManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\EntityEventManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Manages entity lifecycle events and coordinates with the core event system */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'domainEventCollector', 'type' => 'App\\Framework\\Database\\Events\\DomainEventCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatchLifecycleEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatch an entity lifecycle event */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordDomainEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record a domain event for later dispatch */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatchDomainEventsForEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatch all domain events for an entity and clear them */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dispatchAllDomainEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dispatch all domain events across all entities and clear them */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityCreated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create and dispatch an EntityCreatedEvent */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityUpdated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create and dispatch an EntityUpdatedEvent */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'changes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'oldValues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newValues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityDeleted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create and dispatch an EntityDeletedEvent */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'deletedData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityLoaded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create and dispatch an EntityLoadedEvent */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'loadedData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'wasLazy', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityDetached', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create and dispatch an EntityDetachedEvent */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDomainEventCollector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get domain event collector for advanced usage */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Events\\DomainEventCollector', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventDispatcher', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get core event dispatcher for advanced usage */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDomainEventStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics about domain events */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityLoadedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event that is fired when an entity is loaded from database */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'timestamp', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'loadedData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'wasLazy', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityOfType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this event is for a specific entity class */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get event metadata */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/EntityUpdatedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event that is fired when an entity is updated */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'timestamp', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityId', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'changes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'oldValues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newValues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEntityOfType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this event is for a specific entity class */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasFieldChanged', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a specific field was changed */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fieldName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOldValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the old value of a field */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fieldName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNewValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the new value of a field */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fieldName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get event metadata */', 'namespace' => 'App\\Framework\\Database\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/EntityEventUsageExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\Examples\\EntityEventUsageExample', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Comprehensive Entity Event System usage examples * * This demonstrates how to use the entity lifecycle events * with the existing Core EventDispatcher system. */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'basicLifecycleEventHandling', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Basic lifecycle event handling */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'domainEventHandling', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Domain event recording and dispatching */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'eventStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Event statistics and monitoring */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batchOperationsWithEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Batch operations with events */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'conditionalEventHandling', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Conditional event handling */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/ExampleUser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\Examples\\ExampleUser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example Entity for demonstration purposes */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'id', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateEmail', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newEmail', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserEventHandlers.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\Examples\\UserEventHandlers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example Event Handlers using Core EventDispatcher */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityCreated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity creation for all entities */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '100', ), )), ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onUserCreated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle user-specific entity creation */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '90', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityUpdated', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity updates with change tracking */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '100', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityDeleted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity deletion with cleanup */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '100', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityLoaded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity loading for performance monitoring */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '50', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onEntityDetached', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle entity detachment for cleanup */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '100', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onUserWelcomeEmail', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle domain events */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( 'onevent' => 'App\\Framework\\Core\\Events\\OnEvent', 'entitycreatedevent' => 'App\\Framework\\Database\\Events\\EntityCreatedEvent', 'entitydeletedevent' => 'App\\Framework\\Database\\Events\\EntityDeletedEvent', 'entitydetachedevent' => 'App\\Framework\\Database\\Events\\EntityDetachedEvent', 'entityloadedevent' => 'App\\Framework\\Database\\Events\\EntityLoadedEvent', 'entityupdatedevent' => 'App\\Framework\\Database\\Events\\EntityUpdatedEvent', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\Examples\\UserWelcomeEmailEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '200', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onUserRegistrationAnalytics', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Database\\Events\\Examples\\UserRegistrationAnalyticsEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Core\\Events\\OnEvent', 'args' => array ( 'priority' => '150', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserPremiumUpgradeEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\Examples\\UserPremiumUpgradeEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example Domain Event - User Premium Upgrade */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'planType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserRegistrationAnalyticsEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\Examples\\UserRegistrationAnalyticsEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example Domain Event - User Registration Analytics */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'source', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'channel', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Events/Examples/UserWelcomeEmailEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Events\\Examples\\UserWelcomeEmailEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example Domain Event - User Welcome Email */', 'namespace' => 'App\\Framework\\Database\\Events\\Examples', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => '?float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/User.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Example\\User', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beispiel-Entity mit auto-generierter ID */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'column' => 'App\\Framework\\Database\\Attributes\\Column', 'entity' => 'App\\Framework\\Database\\Attributes\\Entity', 'idgenerator' => 'App\\Framework\\Database\\IdGenerator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'id', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'id\'', 'primary' => 'true', ), )), ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'name\'', ), )), ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'email', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Column', 'args' => array ( 'name' => '\'email\'', ), )), ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine neue Instanz mit geändertem Namen */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'column' => 'App\\Framework\\Database\\Attributes\\Column', 'entity' => 'App\\Framework\\Database\\Attributes\\Entity', 'idgenerator' => 'App\\Framework\\Database\\IdGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withEmail', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine neue Instanz mit geänderter Email */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'column' => 'App\\Framework\\Database\\Attributes\\Column', 'entity' => 'App\\Framework\\Database\\Attributes\\Entity', 'idgenerator' => 'App\\Framework\\Database\\IdGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Attributes\\Entity', 'args' => array ( 0 => '\'users\'', ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Example/UserRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Example\\UserRepository', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Beispiel für Repository mit User-Entity */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'entityrepository' => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Database\\Repository\\EntityRepository', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'entityClass', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => false, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByEmail', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet User nach Email */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'entityrepository' => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Example\\User', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen neuen User */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'entityrepository' => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Example\\User', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'email', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'changeName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ändert den Namen eines Users */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'entityrepository' => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Example\\User', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'App\\Framework\\Database\\Example\\User', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'changeEmail', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ändert die Email eines Users */', 'namespace' => 'App\\Framework\\Database\\Example', 'uses' => array ( 'entityrepository' => 'App\\Framework\\Database\\Repository\\EntityRepository', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Example\\User', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'user', 'type' => 'App\\Framework\\Database\\Example\\User', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newEmail', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseDemo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Examples\\AsyncDatabaseDemo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Performance Demo: Sequential vs Parallel Database Operations */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'run', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'syncDb', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'asyncDb', 'type' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Examples/AsyncDatabaseExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Examples\\AsyncDatabaseExample', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Real-world examples for AsyncDatabaseDecorator */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'db', 'type' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadDashboardData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Dashboard data aggregation */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadProductPageData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: E-commerce product page data */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'productId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'importUsers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Bulk user import */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateOrderStatuses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Bulk order status updates */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'orderUpdates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'collectAnalyticsData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Analytics data collection */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'date', 'type' => 'DateTime', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'monitorDatabaseHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Database health monitoring */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUserActivityTimeline', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: User activity timeline */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'days', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reserveInventory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Inventory management with optimistic locking */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'productId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'quantity', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSalesReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Complex reporting with timeout protection */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'DateTime', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'DateTime', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanupOldData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Background data cleanup */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'preloadRelatedData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Example: Read-ahead caching for related data */', 'namespace' => 'App\\Framework\\Database\\Examples', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'asyncdatabasedecorator' => 'App\\Framework\\Database\\AsyncDatabaseDecorator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'productIds', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/DatabaseException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Exception/EntityNotFoundException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Exception\\EntityNotFoundException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/ConnectionHealthChecker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt einen einfachen Health Check aus */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'systemtimer' => 'App\\Framework\\DateTime\\SystemTimer', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkHealthWithTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt einen Health Check mit Timeout aus */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'systemtimer' => 'App\\Framework\\DateTime\\SystemTimer', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkDetailedHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt erweiterte Health Checks aus */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'systemtimer' => 'App\\Framework\\DateTime\\SystemTimer', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkConnectionAlive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Connection noch lebendig ist (schneller Check) */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'systemtimer' => 'App\\Framework\\DateTime\\SystemTimer', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'quick', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory-Methoden für verschiedene Health Check-Konfigurationen */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'systemtimer' => 'App\\Framework\\DateTime\\SystemTimer', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => '?App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detailed', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => '?App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withCustomQueries', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => '?App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isHealthy', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toJson', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withAdditionalData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAdditionalData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasAdditionalData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'healthy', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unhealthy', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timeout', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'error', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HealthCheck/HealthCheckScheduler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\HealthCheck\\HealthCheckScheduler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthChecker', 'type' => 'App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerHealthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registriert einen Health Check */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'intervalSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detailed', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'runScheduledChecks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt alle fälligen Health Checks aus */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'runHealthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt einen spezifischen Health Check aus */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle letzten Health Check-Ergebnisse zurück */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLastResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das letzte Ergebnis für einen spezifischen Health Check zurück */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'areAllHealthy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob alle registrierten Connections gesund sind */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine Zusammenfassung aller Health Checks zurück */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unregisterHealthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entfernt einen Health Check */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht alle Health Checks */', 'namespace' => 'App\\Framework\\Database\\HealthCheck', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Hydrator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Hydrator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\HydratorInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityLoader', 'type' => '?App\\Framework\\Database\\EntityLoaderInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hydrate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hydrateWithRelations', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hydrateManyWithRelations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hydrate multiple entities with eager loaded relations (solves N+1 problem) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'propertymetadata' => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataRows', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\HydratorInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\HydratorInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/HydratorInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\HydratorInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hydrate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hydrate entity from database row data */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hydrateWithRelations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hydrate entity with eager loaded relations */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hydrateManyWithRelations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hydrate multiple entities with eager loaded relations (batch processing to avoid N+1 problem) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataRows', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/IdGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\IdGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generator für eindeutige Entity-IDs */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generiert eine zufällige ID */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isValid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob eine ID gültig ist */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/IdentityMap.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\IdentityMap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * IdentityMap is a pattern implementation that provides a way to manage * and track instances of entities by their unique identifiers within a single context. * It helps prevent duplicate instances of the same entity in memory. */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remove', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyConnectionFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\LazyConnectionFactory', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createLazyGhost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'array|App\\Framework\\Database\\Driver\\DriverConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLazyGhost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initializeLazyGhost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetLazyGhost', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/LazyLoader.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\LazyLoader', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchRelationLoader', 'type' => '?App\\Framework\\Database\\BatchRelationLoader', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createLazyGhost', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Lazy Ghost Object mit dynamischen Relationen */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLazyGhost', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob ein Object ein uninitializiertes Lazy Object ist */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initializeLazyObject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Forciert die Initialisierung eines Lazy Objects */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearRelationTracking', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear relation access tracking - useful for testing or memory management */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRelationAccessStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics about relation access patterns - useful for debugging N+1 issues */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'entitymetadata' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/EntityMetadata.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'idColumn', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'idProperty', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflection', 'type' => 'ReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProperty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Metadata\\PropertyMetadata', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getColumnName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'propertyName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataExtractor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Metadata\\MetadataExtractor', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'determineRelationType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'ReflectionProperty', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/MetadataRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extractor', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataExtractor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Metadata\\EntityMetadata', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Metadata/PropertyMetadata.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columnName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'nullable', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hasDefault', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultValue', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allTypes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'primary', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'autoIncrement', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isRelation', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relationTargetClass', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relationForeignKey', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relationLocalKey', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'relationType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isUnionType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/CacheMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\CacheMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Middleware\\QueryMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheStrategy', 'type' => 'App\\Framework\\Database\\Cache\\CacheStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultTtlSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheableOperations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidatePattern', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidateAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/HealthCheckMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\HealthCheckMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Middleware\\QueryMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthCheckInterval', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLastHealthCheckResult', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\HealthCheck\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/MiddlewarePipeline.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middleware', 'type' => 'App\\Framework\\Database\\Middleware\\QueryMiddleware', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addMultiple', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'middleware', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'finalHandler', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMiddleware', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasMiddleware', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMiddlewareByType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Middleware\\QueryMiddleware', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'default', 'type' => '?mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasMetadata', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/QueryMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\QueryMiddleware', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Verarbeitet eine Query-Operation durch die Middleware */', 'namespace' => 'App\\Framework\\Database\\Middleware', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Priorität der Middleware (höhere Zahl = früher in der Pipeline) */', 'namespace' => 'App\\Framework\\Database\\Middleware', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/RetryMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\RetryMiddleware', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Middleware\\QueryMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retryDelayMs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retryableExceptions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Middleware/UnifiedRetryMiddleware.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Middleware\\UnifiedRetryMiddleware', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Database Retry-Middleware basierend auf dem neuen Retry-System * * Ersetzt die alte RetryMiddleware mit einheitlicher Retry-Logik */', 'namespace' => 'App\\Framework\\Database\\Middleware', 'uses' => array ( 'eventdispatcherinterface' => 'App\\Framework\\Core\\Events\\EventDispatcherInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'connectionhealthchecker' => 'App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker', 'clock' => 'App\\Framework\\DateTime\\Clock', 'retrymanager' => 'App\\Framework\\Retry\\RetryManager', 'exponentialbackoffstrategy' => 'App\\Framework\\Retry\\Strategies\\ExponentialBackoffStrategy', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Middleware\\QueryMiddleware', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcherInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthChecker', 'type' => 'App\\Framework\\Database\\HealthCheck\\ConnectionHealthChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Database\\Middleware\\QueryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'next', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/MiddlewareConnection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\MiddlewareConnection', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseConnection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pipeline', 'type' => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPipeline', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Middleware\\MiddlewarePipeline', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBaseConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/AbstractDependentMigration.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\AbstractDependentMigration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Abstract base class for migrations that have dependencies on other migrations. * * This class implements the DependentMigration interface and provides common * functionality for dependency tracking. Concrete migrations can extend this * class to easily add dependency support. */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'abstract' => true, 'final' => false, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Migration\\DependentMigration', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Constructor */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Apply the migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => true, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Revert the migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => true, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the version of this migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => true, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the description of this migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => true, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the versions of migrations that this migration depends on */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependsOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this migration depends on another migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addDependency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a dependency to this migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add multiple dependencies to this migration * * @param MigrationVersionCollection|array $versions The versions to depend on * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versions', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addDependencyByVersion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a dependency by version string * * @param string $versionString The version string (e.g., "2023_01_01_120000") * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionString', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/ApplyMigrations.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\ApplyMigrations', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'runner', 'type' => 'App\\Framework\\Database\\Migration\\MigrationRunner', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'loader', 'type' => 'App\\Framework\\Database\\Migration\\MigrationLoader', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'migrate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:migrate\'', 1 => '\'Apply all pending migrations\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'steps', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:rollback\'', 1 => '\'Rollback the last migration batch\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'status', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:status\'', 1 => '\'Show migration status\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\Commands\\MakeMigrationCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'generator', 'type' => 'App\\Framework\\Database\\Migration\\MigrationGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'domain', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'make:migration\'', 1 => '\'Generate a new migration file\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Commands/MakeMigrationFromDiffCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\Commands\\MakeMigrationFromDiffCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Command to generate a migration from schema differences between two databases */', 'namespace' => 'App\\Framework\\Database\\Migration\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'migrationversion' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'migrationgenerator' => 'App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator', 'schemacomparator' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrationGenerator', 'type' => 'App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a migration from schema differences * * @param string $name The name of the migration * @param string $sourceConnection The name of the source connection (default: default) * @param string $targetConnection The name of the target connection * @param string|null $sourceSchema The name of the source schema (default: public for PostgreSQL, database name for MySQL) * @param string|null $targetSchema The name of the target schema (default: public for PostgreSQL, database name for MySQL) * @param string $domain The domain for the migration (default: Media) * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Migration\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'migrationversion' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'migrationgenerator' => 'App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator', 'schemacomparator' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceConnection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetConnection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceSchema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetSchema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'domain', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:migrate:diff\'', 1 => '\'Generate a migration from schema differences\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/DependentMigration.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\DependentMigration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for migrations that have dependencies on other migrations. * * This extends the base Migration interface to add dependency tracking. * Migrations that implement this interface can specify other migrations * that must be applied before this one. */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( 0 => 'App\\Framework\\Database\\Migration\\Migration', ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the versions of migrations that this migration depends on. * * These migrations must be applied before this one. * * @return MigrationVersionCollection Collection of migration versions that this migration depends on */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependsOn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this migration depends on another migration. * * @param MigrationVersion $version The version to check * @return bool True if this migration depends on the specified version */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addDependency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a dependency to this migration. * * @param MigrationVersion $version The version to depend on * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/Migration.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\Migration', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'up', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'down', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of Migration instances with type-safe operations */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param Migration ...$migrations Migration instances */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrations', 'type' => 'App\\Framework\\Database\\Migration\\Migration', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create collection from array of Migration instances * * @param Migration[] $migrations Array of migration instances * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get iterator for foreach loops * * @return Traversable */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count migrations in collection * * @return int */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection is empty * * @return bool */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getByVersion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get migration by version * * @param MigrationVersion $version The version to find * @return Migration|null The migration or null if not found */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Migration\\Migration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getByVersionString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get migration by version string * * @param string $versionString The version string to find * @return Migration|null The migration or null if not found */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Migration\\Migration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionString', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasVersion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection contains a migration with specific version * * @param MigrationVersion $version The version to check * @return bool */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasVersionString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection contains a migration with specific version string * * @param string $versionString The version string to check * @return bool */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionString', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVersions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all versions in the collection * * @return MigrationVersionCollection */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sorted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get sorted collection (by version ascending) * * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sortedDescending', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get collection sorted in reverse order (by version descending) * * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter migrations by a predicate * * @param callable(Migration): bool $predicate Filter function * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'predicate', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'after', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get migrations after a specific version * * @param MigrationVersion $version The version to compare against * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'upTo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get migrations before or equal to a specific version * * @param MigrationVersion $version The version to compare against * @return self */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'first', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the first migration (lowest version) * * @return Migration|null */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Migration\\Migration', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'last', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the last migration (highest version) * * @return Migration|null */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Migration\\Migration', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all migrations as array * * @return Migration[] */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationDependencyGraph.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationDependencyGraph', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Manages dependencies between migrations and determines the correct execution order. */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'buildGraph', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Build a dependency graph from a collection of migrations */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrations', 'type' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExecutionOrder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the migrations in the correct execution order based on dependencies */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the dependencies for a specific migration * * @param string $version The migration version * @return array The versions this migration depends on */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a migration has dependencies */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDependencyOf', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a migration is a dependency of another migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'potentialDependant', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDependants', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all migrations that depend on a specific migration * * @param string $version The migration version * @return array The versions that depend on this migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationGenerator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'domain', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationLoader.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationLoader', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discoveryRegistry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadMigrations', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationRunner.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationRunner', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrationsTable', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'migrate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Run migrations * * @param MigrationCollection $migrations The migrations to run * @return array List of executed migration versions */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'transaction' => 'App\\Framework\\Database\\Transaction', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrations', 'type' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rollback migrations * * @param MigrationCollection $migrations The migrations to rollback from * @param int $steps Number of migrations to rollback * @return MigrationCollection List of rolled back migration versions */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'transaction' => 'App\\Framework\\Database\\Transaction', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrations', 'type' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'steps', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get status of all migrations * * @param MigrationCollection $migrations The migrations to check status for * @return MigrationStatusCollection Collection of migration statuses */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'transaction' => 'App\\Framework\\Database\\Transaction', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationStatusCollection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'migrations', 'type' => 'App\\Framework\\Database\\Migration\\MigrationCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAppliedVersions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatus.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object representing the status of a single migration */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'applied', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'applied', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'pending', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isApplied', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPending', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatusIcon', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatusText', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for backward compatibility * @return array */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationStatusCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationStatusCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of MigrationStatus objects */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param MigrationStatus[] $statuses */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statuses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param MigrationStatus[] $statuses */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statuses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'status', 'type' => 'App\\Framework\\Database\\Migration\\MigrationStatus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getApplied', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only applied migrations */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPending', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get only pending migrations */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'countApplied', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count applied migrations */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'countPending', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count pending migrations */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for backward compatibility * @return array> */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return Traversable */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersion.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromTimestamp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromSequence', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'domain', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sequence', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compare', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'equals', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Migration/MigrationVersionCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Migration\\MigrationVersionCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of MigrationVersion objects */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param MigrationVersion[] $versions */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromStrings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array of version strings * @param string[] $versionStrings */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionStrings', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromVersions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param MigrationVersion[] $versions */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'contains', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => 'App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'containsString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'versionString', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sorted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get sorted versions (oldest first) */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLatest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the latest (most recent) version */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Migration\\MigrationVersion', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toStringArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array of version strings for backward compatibility * @return string[] */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return MigrationVersion[] */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return Traversable */', 'namespace' => 'App\\Framework\\Database\\Migration', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', 'traversable' => 'Traversable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'Traversable', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/DatabaseHealthCheckCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Commands\\DatabaseHealthCheckCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Command to check database health */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'healthcheckstatus' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthChecker', 'type' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check database health * * @param string $connection The database connection to check * @param bool $json Whether to output in JSON format * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'healthcheckstatus' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'json', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:health\'', 1 => '\'Check database health\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check health of all database connections * * @param bool $json Whether to output in JSON format * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'healthcheckstatus' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'json', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:health:all\'', 1 => '\'Check health of all database connections\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Commands/LogQueryStatisticsCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Commands\\LogQueryStatisticsCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Command to log query statistics to the history tables */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'historyLogger', 'type' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Log current query statistics to the history tables * * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:log-stats\'', 1 => '\'Log current query statistics to the history tables\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'purge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Purge old query statistics data * * @param int $days Number of days of history to keep * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'days', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:purge-stats\'', 1 => '\'Purge old query statistics data\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseDashboardController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseDashboardController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for the database performance dashboard */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\Controller', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryProfiler', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueryDetector', 'type' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profilingDashboard', 'type' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'viewRenderer', 'type' => 'App\\Framework\\View\\ViewRenderer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashboard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dashboard home page */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/dashboard\'', 'name' => '\'database_dashboard\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'stats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get database statistics for a specific connection */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/stats/{connection}\'', 'name' => '\'database_stats\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query statistics */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/queries\'', 'name' => '\'database_queries\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tables', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get table statistics for a specific connection */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/tables/{connection}\'', 'name' => '\'database_tables\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'indexes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index statistics for a specific connection */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/indexes/{connection}\'', 'name' => '\'database_indexes\'', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'specificStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get database-specific statistics */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/specific/{connection}\'', 'name' => '\'database_specific\'', ), )), ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'profiling', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling data */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'profilingdashboard' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'slowquerydetector' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/profiling\'', 'name' => '\'database_profiling\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/DatabaseHealthController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Dashboard\\DatabaseHealthController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for the database health dashboard */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\Controller', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'healthChecker', 'type' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'viewRenderer', 'type' => 'App\\Framework\\View\\ViewRenderer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashboard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dashboard home page */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/health\'', 'name' => '\'database_health\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'connectionHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get health check results for a specific connection */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/health/{connection}\'', 'name' => '\'database_health_connection\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'allConnectionsHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get health check results for all connections */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databasehealthchecker' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/health/all\'', 'name' => '\'database_health_all\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Dashboard/QueryHistoryController.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Dashboard\\QueryHistoryController', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Controller for displaying historical query performance data */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Http\\Controller', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'historyLogger', 'type' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'viewRenderer', 'type' => 'App\\Framework\\View\\ViewRenderer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dashboard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Display the query history dashboard */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/history\'', 'name' => '\'database_history\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hourlyStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hourly query statistics for a specific date range */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/history/hourly\'', 'name' => '\'database_history_hourly\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dailyStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get daily query statistics for a specific date range */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/history/daily\'', 'name' => '\'database_history_daily\'', ), )), ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'slowQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get top slow queries for a specific date range */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/history/slow-queries\'', 'name' => '\'database_history_slow_queries\'', ), )), ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryTrend', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query execution trend for a specific query hash */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryHash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/history/query-trend/{queryHash}\'', 'name' => '\'database_history_query_trend\'', ), )), ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryDetails', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query details for a specific query hash */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Dashboard', 'uses' => array ( 'route' => 'App\\Framework\\Attributes\\Route', 'queryhistorylogger' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'controller' => 'App\\Framework\\Http\\Controller', 'jsonresponse' => 'App\\Framework\\Http\\Response\\JsonResponse', 'response' => 'App\\Framework\\Http\\Response\\Response', 'viewresponse' => 'App\\Framework\\Http\\Response\\ViewResponse', 'viewrenderer' => 'App\\Framework\\View\\ViewRenderer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Http\\Response\\Response', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryHash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Attributes\\Route', 'args' => array ( 0 => '\'/admin/database/history/query-details/{queryHash}\'', 'name' => '\'database_history_query_details\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/DatabaseHealthChecker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Health\\DatabaseHealthChecker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service for checking database health */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkHealth', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Run all health checks for a specific connection * * @param string $connection The connection name * @return HealthCheckResult The health check result */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'mysqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\MySQLOptimizer', 'postgresqloptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\PostgreSQLOptimizer', 'sqliteoptimizer' => 'App\\Framework\\Database\\Driver\\Optimization\\SQLiteOptimizer', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents the result of multiple health checks */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a health check */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'status', 'type' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add an error */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getChecks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all health checks * * @return array */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all errors * * @return array */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the connection name */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the timestamp */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasErrors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if there are any errors */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasWarnings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if there are any warnings */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isHealthy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if all checks are OK */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverallStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the overall status */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the result as an array * @return array */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/Health/HealthCheckStatus.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\Health\\HealthCheckStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents the status of a health check */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'OK', 'value' => '\'ok\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Status constants */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'WARNING', 'value' => '\'warning\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantsNode::__set_state(array( 'constants' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassConstantNode::__set_state(array( 'name' => 'ERROR', 'value' => '\'error\'', 'attributes' => array ( ), )), ), 'public' => true, 'private' => false, 'final' => false, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ok', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create an OK status */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'warning', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a warning status */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'error', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create an error status */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isOk', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the status is OK */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWarning', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the status is a warning */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the status is an error */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the status as an array * @return array */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\Health', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Monitoring/History/QueryHistoryLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Monitoring\\History\\QueryHistoryLogger', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Logs query statistics over time for historical analysis */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryProfiler', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'historyTable', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detailsTable', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logCurrentStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Log current query statistics to the history table */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHourlyStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get hourly query statistics for a specific date range * * @param string $startDate Start date in Y-m-d format * @param string $endDate End date in Y-m-d format * @return array> Hourly statistics */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDailyStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get daily query statistics for a specific date range * * @param string $startDate Start date in Y-m-d format * @param string $endDate End date in Y-m-d format * @return array> Daily statistics */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopSlowQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get top slow queries for a specific date range * * @param string $startDate Start date in Y-m-d format * @param string $endDate End date in Y-m-d format * @param int $limit Maximum number of queries to return * @return array> Slow queries */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryTrend', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query execution trend for a specific query hash * * @param string $queryHash The MD5 hash of the SQL query * @param string $startDate Start date in Y-m-d format * @param string $endDate End date in Y-m-d format * @return array> Query execution trend */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryHash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryDetails', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query details for a specific query hash * * @param string $queryHash The MD5 hash of the SQL query * @param int $limit Maximum number of details to return * @return array> Query details */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryHash', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'purgeOldData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Purge old history data * * @param int $daysToKeep Number of days of history to keep * @return int Number of records deleted */', 'namespace' => 'App\\Framework\\Database\\Monitoring\\History', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'profiledquery' => 'App\\Framework\\Database\\Profiling\\ProfiledQuery', 'queryprofiler' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'daysToKeep', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoConnection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\PdoConnection', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pdo', 'type' => 'PDO', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PdoResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\PdoResult', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ResultInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statement', 'type' => 'PDOStatement', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rowCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'ArrayIterator', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/PooledConnection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\PooledConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a connection wrapper in a connection pool. * * The PooledConnection class acts as a proxy for an actual database connection, managing the lifecycle * of the underlying connection and facilitating its return to the connection pool upon release or destruction. * It delegates operations to the underlying `ConnectionInterface` implementation. */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pool', 'type' => 'App\\Framework\\Database\\ConnectionPool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'release', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__destruct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Events/SlowQueryDetectedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event dispatched when a slow query is detected */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Events', 'uses' => array ( 'queryprofile' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'slowqueryalert' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlert', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alert', 'type' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlert', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profile', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEventName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get event name for identification */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Events', 'uses' => array ( 'queryprofile' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'slowqueryalert' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlert', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for logging/serialization */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Events', 'uses' => array ( 'queryprofile' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'slowqueryalert' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlert', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfileSummary.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Summary statistics for query profiling session */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalExecutionTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageExecutionTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalMemoryUsage', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageMemoryUsage', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryTypeDistribution', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowestQuery', 'type' => '?App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueryPercentage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow query percentage */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalMemoryUsageBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get total memory usage as Byte object */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAverageMemoryUsageBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get average memory usage as Byte object */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueriesPerSecond', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get queries per second */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMostCommonQueryType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get most common query type */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryTypeDistributionWithPercentages', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query type distribution with percentages */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceAssessment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance assessment */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get optimization recommendations */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConfig.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\ProfilingConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configuration for database profiling and logging */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'slowQueryThreshold', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logSlowQueriesOnly', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logParameters', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logStackTrace', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueryThreshold', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxLoggedQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableSlowQueryDetection', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableQueryAnalysis', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sensitiveParameterPatterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create default development configuration */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create production configuration */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration for testing */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFeatureEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if feature is enabled based on environment */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'feature', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingConnection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Connection wrapper that adds profiling capabilities to any database connection */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profiler', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Database\\Profiling\\QueryLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute SQL with profiling */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query with profiling */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query single row with profiling */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query column with profiling */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query scalar with profiling */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Begin transaction (no profiling needed, but logged) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Commit transaction (no profiling needed, but logged) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rollback transaction (no profiling needed, but logged) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if in transaction */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get last insert ID */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get underlying PDO connection */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setProfilingEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable/disable profiling */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProfilingEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if profiling is enabled */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfiler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the profiler instance */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLogger', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the logger instance */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Profiling\\QueryLogger', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying connection */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling statistics */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearProfilingData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all profiling data */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiling summary */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportProfilingData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export profiling data */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/ProfilingDashboard.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\ProfilingDashboard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dashboard for database profiling visualization and reporting */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Register a profiling connection for monitoring */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\Profiling\\ProfilingConnection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverview', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get overview data for all registered connections */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilingReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get detailed profiling report */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueryReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow query report */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance report */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get optimization report with suggestions */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'export', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export dashboard data in different formats */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearAllProfilingData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all profiling data for registered connections */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegisteredConnections', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get list of registered connection names */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'optimizationreport' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'performancereport' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'profilingreport' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'slowqueryreport' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalysis.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query analysis result with optimization suggestions */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profile', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'suggestions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'issues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'indexRecommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionPlan', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'optimizationScore', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAnalysisGrade', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get analysis grade based on optimization score */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get priority level for optimization */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'needsImmediateAttention', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if query needs immediate attention */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get top recommendations (most important) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get formatted summary */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\QueryAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Advanced query analysis and optimization suggestions */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze query and provide optimization suggestions */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\QueryAnalysis', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profile', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batchAnalyze', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch analyze multiple profiles */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profiles', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get optimization summary for multiple analyses */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'analyses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryLogger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query logger with multiple output formats and filtering */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueryThreshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logSlowQueriesOnly', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logParameters', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logStackTrace', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxLoggedQueries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withDefaults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create with default threshold */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => 'App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'logQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Log a query profile */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profile', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLoggedQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all logged queries */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow queries */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'export', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Export queries to different formats */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearLog', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear logged queries */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLogStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get log statistics */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'logger' => 'App\\Framework\\Logging\\Logger', 'loglevel' => 'App\\Framework\\Logging\\LogLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfile.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Immutable query profile with execution metrics */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionTime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startTimestamp', 'type' => 'App\\Framework\\Database\\Events\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endTimestamp', 'type' => 'App\\Framework\\Database\\Events\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryUsage', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'peakMemoryUsage', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'affectedRows', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isSlow', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query type (SELECT, INSERT, UPDATE, etc.) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSuccessful', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if query was successful */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isReadQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if query is a read operation */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWriteQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if query is a write operation */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryUsageBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory usage as Byte object */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPeakMemoryUsageBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get peak memory usage as Byte object */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNormalizedSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get normalized SQL (for grouping similar queries) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getComplexityScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get query complexity score (simplified heuristic) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceRating', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Estimate query performance rating */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get formatted summary string */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/QueryProfiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\QueryProfiler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Query performance profiler with detailed metrics collection */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => 'App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueryThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'startProfile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Start profiling a query */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'endProfile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * End profiling and record results */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profileId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'affectedRows', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'error', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'profile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Profile a callable with automatic timing */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'execution', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all profiles */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow queries */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilesByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiles by query type */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get summary statistics */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Profiling\\ProfileSummary', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearProfiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all profiles */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProfilesCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get profiles count */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isProfilingActive', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if profiling is active for a profile ID */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profileId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getActiveProfilesCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get active profiles count */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setSlowQueryThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set slow query threshold */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueryThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get slow query threshold */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/OptimizationReport.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\Reports\\OptimizationReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimization analysis report with suggestions and recommendations */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'optimizationData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get optimization summary */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConnectionsByPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get connections by optimization priority */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'priority', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopSlowQueryPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get most common slow query patterns across all connections */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllIndexSuggestions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all unique index suggestions */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceIssuesBySeverity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance issues by severity */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationRoadmap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get optimization roadmap with prioritized actions */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOptimizationImpact', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get optimization impact estimation */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/PerformanceReport.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\Reports\\PerformanceReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Performance analysis report */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverallMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get overall performance metrics */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceTrends', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance trends (simplified) */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/ProfilingReport.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\Reports\\ProfilingReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Comprehensive profiling report */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profiles', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connectionStats', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get report summary */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/Reports/SlowQueryReport.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\Reports\\SlowQueryReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Slow query analysis report */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'slowQueries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTopSlowQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get top slow queries */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueryPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Group slow queries by pattern */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Database\\Profiling\\Reports', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlert.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Slow query alert with recommendations */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profile', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alertLevel', 'type' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlertLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detectedPattern', 'type' => '?App\\Framework\\Database\\Profiling\\SlowQueryPattern', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Database\\Events\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSeverityScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get alert severity score (0-10) */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get alert priority */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAlertMessage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get formatted alert message */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'timestamp' => 'App\\Framework\\Database\\Events\\Timestamp', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryAlertLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\SlowQueryAlertLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Slow query alert levels */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INFO', 'value' => '\'info\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WARNING', 'value' => '\'warning\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'EMERGENCY', 'value' => '\'emergency\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\SlowQueryDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detects and alerts on slow database queries */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'slowquerydetectedevent' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultSlowThreshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criticalSlowThreshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withDefaults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create with default thresholds */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'slowquerydetectedevent' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze query profile and detect slow queries */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'slowquerydetectedevent' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\Profiling\\SlowQueryAlert', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'profile', 'type' => 'App\\Framework\\Database\\Profiling\\QueryProfile', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSlowQueryStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recent slow query statistics */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'slowquerydetectedevent' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setAlertThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Update alert threshold */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'slowquerydetectedevent' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'threshold', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearRecentSlowQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear recent slow queries tracking */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'slowquerydetectedevent' => 'App\\Framework\\Database\\Profiling\\Events\\SlowQueryDetectedEvent', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPattern.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\SlowQueryPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detected slow query pattern */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Profiling\\SlowQueryPatternType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'occurrences', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeWindow', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSeverity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get pattern severity */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Profiling/SlowQueryPatternType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Profiling\\SlowQueryPatternType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Types of slow query patterns that can be detected */', 'namespace' => 'App\\Framework\\Database\\Profiling', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REPEATED_SLOW_QUERY', 'value' => '\'repeated_slow_query\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'N_PLUS_ONE', 'value' => '\'n_plus_one\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MISSING_INDEX', 'value' => '\'missing_index\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FULL_TABLE_SCAN', 'value' => '\'full_table_scan\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/Examples/QueryBuilderUsageExample.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\QueryBuilder\\Examples\\QueryBuilderUsageExample', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Comprehensive QueryBuilder usage examples * * This class demonstrates various ways to use the QueryBuilder * with the EntityManager for type-safe database queries. */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'basicQueries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Basic SELECT queries */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereClauseExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE clause examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'joinExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * JOIN examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'aggregateExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aggregate function examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sortingAndPagination', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sorting and pagination examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'entityHydrationExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entity hydration examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'subqueryExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Subquery examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rawSqlExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Raw SQL examples for complex cases */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performanceExamples', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Performance optimization examples */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'userDashboardStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Complex real-world example: User dashboard statistics */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'userId', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'salesAnalytics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Advanced reporting example: Sales analytics */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder\\Examples', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endDate', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base interface for all query builders */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Build the SQL query */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameters for prepared statement */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute the query and return results */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/QueryBuilderFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilderFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory for creating query builders */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'select', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a SELECT query builder */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectFrom', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a SELECT query builder for a specific entity */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectFromTable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a SELECT query builder with table name */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectFromWithEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a SELECT query builder for entity with dependencies */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/QueryBuilder/SelectQueryBuilder.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\QueryBuilder\\SelectQueryBuilder', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Type-safe SELECT query builder */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilder', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => '?App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => '?App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'select', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SELECT clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectAs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SELECT with aliases */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectRaw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SELECT raw expression */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expression', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * COUNT aggregate */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectSum', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SUM aggregate */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectAvg', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * AVG aggregate */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectMax', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * MAX aggregate */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'selectMin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * MIN aggregate */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'from', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * FROM clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'join', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * INNER JOIN */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'leftJoin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * LEFT JOIN */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rightJoin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * RIGHT JOIN */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'alias', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'where', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE clause with equals condition */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereOperator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE clause with custom operator */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operator', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereIn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE IN clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'values', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereNotIn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE NOT IN clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'values', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereBetween', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE BETWEEN clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'min', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'max', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereLike', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE LIKE clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereNull', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE IS NULL clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereNotNull', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE IS NOT NULL clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereRaw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE with raw condition */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bindings', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'whereSubquery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * WHERE with subquery */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operator', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'subquery', 'type' => 'App\\Framework\\Database\\QueryBuilder\\QueryBuilder', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'groupBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * GROUP BY clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'having', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * HAVING clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'condition', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'orderBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * ORDER BY clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'direction', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'orderByAsc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * ORDER BY ASC */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'orderByDesc', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * ORDER BY DESC */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'limit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * LIMIT clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'offset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * OFFSET clause */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'offset', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'paginate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Pagination helper */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'page', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'perPage', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Build the SQL query */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get parameters for prepared statement */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 33 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute and return raw results */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 34 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setEntityDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set dependencies for entity hydration (used when EntityManager is not available) */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 35 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntities', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute and return entities (if entity manager is available) */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 36 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'first', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute and return first result */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 37 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'firstEntity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute and return first entity */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( ), 'attributes' => array ( ), )), 38 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scalar', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute and return scalar value */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 39 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count results */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 40 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if any results exist */', 'namespace' => 'App\\Framework\\Database\\QueryBuilder', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'entitymanager' => 'App\\Framework\\Database\\EntityManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/MasterSlaveRouter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Master-Slave router with load balancing and health checks */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'masterConnection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'replicaConnections', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lagDetector', 'type' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'route', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Route query to appropriate connection */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'forceWrite', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRoutingStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive routing statistics for monitoring */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWeightDistribution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get weight distribution for current healthy replicas */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementConnectionCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Increment connection count for replica */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'replica', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decrementConnectionCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Decrement connection count for replica */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'replica', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordResponseTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Track query response time for performance-based routing */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'replica', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'responseTimeMs', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get router statistics */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetStickyConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset sticky connection */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'loadbalancingstrategy' => 'App\\Framework\\Database\\Config\\LoadBalancingStrategy', 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReadWriteMonitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ReadWrite\\ReadWriteMonitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Monitoring and metrics for Read/Write splitting */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'readwriteconnection' => 'App\\Framework\\Database\\ReadWriteConnection', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ReadWriteConnection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'recordQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Record query execution */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'readwriteconnection' => 'App\\Framework\\Database\\ReadWriteConnection', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'usedWrite', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive monitoring statistics */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'readwriteconnection' => 'App\\Framework\\Database\\ReadWriteConnection', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset metrics */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'readwriteconnection' => 'App\\Framework\\Database\\ReadWriteConnection', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQueryTypeMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get metrics for specific query type */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'readwriteconnection' => 'App\\Framework\\Database\\ReadWriteConnection', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWrite/ReplicationLagDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detects replication lag between master and slave databases */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timer', 'type' => 'App\\Framework\\DateTime\\Timer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectLag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detect replication lag using heartbeat method */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'master', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'replica', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initializeHeartbeat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Initialize heartbeat system (for production use) */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'master', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateHeartbeat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Update heartbeat (should be called periodically) */', 'namespace' => 'App\\Framework\\Database\\ReadWrite', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'clock' => 'App\\Framework\\DateTime\\Clock', 'timer' => 'App\\Framework\\DateTime\\Timer', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'master', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ReadWriteConnection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ReadWriteConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Class ReadWriteConnection provides a mechanism to handle separate writing and reading database connections. * It ensures that write-heavy operations are directed to a designated write connection, * while read operations are distributed among a pool of read connections. * * Enhanced with load balancing, health checks, and lag detection. */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'masterslaverouter' => 'App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\ConnectionInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'writeConnection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'readConnections', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\Database\\Config\\ReadWriteConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => '?App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lagDetector', 'type' => '?App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'query', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryOne', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'queryScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'beginTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'inTransaction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastInsertId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPdo', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'PDO', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forceWriteConnection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetConnectionMode', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get read/write statistics */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'masterslaverouter' => 'App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWriteConnection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get write connection (for direct access if needed) */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'masterslaverouter' => 'App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ConnectionInterface', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReadConnections', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get read connections */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'masterslaverouter' => 'App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasAdvancedRouting', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if advanced routing is enabled */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'readwriteconfig' => 'App\\Framework\\Database\\Config\\ReadWriteConfig', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'masterslaverouter' => 'App\\Framework\\Database\\ReadWrite\\MasterSlaveRouter', 'replicationlagdetector' => 'App\\Framework\\Database\\ReadWrite\\ReplicationLagDetector', 'clock' => 'App\\Framework\\DateTime\\Clock', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Repository/EntityRepository.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Repository\\EntityRepository', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Basis-Repository für Entities */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'abstract' => true, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'entityClass', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => false, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityManager', 'type' => 'App\\Framework\\Database\\EntityManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'find', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entity nach ID */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findEager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entity nach ID (eager loading) */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'id', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Entities * @return array */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAllEager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Entities (eager loading) * @return array */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet Entities nach Kriterien * @param array $criteria * @param array|null $orderBy * @return array */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'orderBy', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findOneBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet eine Entity nach Kriterien * @param array $criteria */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'save', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert eine Entity */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'saveAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Speichert mehrere Entities * @param array $entities * @return array */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht eine Entity */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'transaction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt eine Funktion in einer Transaktion aus */', 'namespace' => 'App\\Framework\\Database\\Repository', 'uses' => array ( 'entitymanager' => 'App\\Framework\\Database\\EntityManager', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/ResultInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\ResultInterface', 'phpDoc' => NULL, 'extends' => array ( 0 => 'IteratorAggregate', 1 => 'Countable', ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fetchScalar', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rowCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Blueprint.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Blueprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fluent table builder for defining table structures */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'table', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'columns', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'indexes', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'foreignKeys', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'commands', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'engine', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'charset', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'collation', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'temporary', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'engine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Table modifiers */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'engine', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'charset', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'charset', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'collation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'temporary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'id', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Column definitions */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ulid', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'uuid', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'increments', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bigIncrements', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'integer', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bigInteger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unsignedInteger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unsignedBigInteger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tinyInteger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'smallInteger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mediumInteger', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'float', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scale', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'double', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scale', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'decimal', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scale', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'boolean', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 30 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'string', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'length', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 31 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'text', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 32 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mediumText', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 33 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'longText', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 34 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'binary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 35 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'json', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 36 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'jsonb', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 37 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'date', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 38 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dateTime', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 39 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'time', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 40 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timestamp', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 41 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timestamps', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 42 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'softDeletes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'precision', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 43 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'enum', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'allowed', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 44 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'primary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Index definitions */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 45 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 46 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'index', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 47 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fulltext', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 48 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'spatialIndex', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 49 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'foreign', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Foreign key definitions */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\ForeignKeyDefinition', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 50 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropColumn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Column operations */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 51 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'renameColumn', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'from', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 52 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Index operations */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 53 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropUnique', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 54 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropPrimary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 55 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropForeign', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 56 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'raw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Raw SQL */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'dropcolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'dropforeigncommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'dropindexcommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'rawcommand' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'renamecolumncommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ColumnDefinition.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\ColumnDefinition', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Column definition with fluent modifiers */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'type', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'parameters', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'nullable', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'default', ), 'phpDoc' => NULL, 'type' => 'mixed', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'hasDefault', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'autoIncrement', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'unsigned', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'unique', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'primary', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'index', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'comment', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'after', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'first', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'charset', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'collation', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'nullable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fluent modifiers */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'nullable', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'default', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'useCurrent', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'autoIncrement', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unsigned', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'primary', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'index', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'comment', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'comment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'after', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 27 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'first', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 28 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'charset', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'charset', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 29 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'collation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/AlterTableCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'table', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'blueprint', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Database\\Schema\\Blueprint', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blueprint', 'type' => 'App\\Framework\\Database\\Schema\\Blueprint', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/CreateTableCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'table', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'blueprint', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Database\\Schema\\Blueprint', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blueprint', 'type' => 'App\\Framework\\Database\\Schema\\Blueprint', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropColumnCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\DropColumnCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'columns', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropForeignCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\DropForeignCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'index', ), 'phpDoc' => NULL, 'type' => 'string|array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropIndexCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\DropIndexCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'index', ), 'phpDoc' => NULL, 'type' => 'string|array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'index', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/DropTableCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'table', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'ifExists', ), 'phpDoc' => NULL, 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ifExists', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RawCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\RawCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'sql', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RenameColumnCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\RenameColumnCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'from', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'to', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'from', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/RenameTableCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'from', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'to', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'from', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\SchemaCommand', 'phpDoc' => NULL, 'abstract' => true, 'final' => false, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'table', ), 'phpDoc' => NULL, 'type' => 'string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Commands/SchemaDiffCommand.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Commands\\SchemaDiffCommand', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Command to display schema differences between two databases */', 'namespace' => 'App\\Framework\\Database\\Schema\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'schemacomparator' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Display schema differences * * @param string $sourceConnection The name of the source connection (default: default) * @param string $targetConnection The name of the target connection * @param string|null $sourceSchema The name of the source schema (default: public for PostgreSQL, database name for MySQL) * @param string|null $targetSchema The name of the target schema (default: public for PostgreSQL, database name for MySQL) * @param bool $detailed Whether to show detailed differences * @return ExitCode */', 'namespace' => 'App\\Framework\\Database\\Schema\\Commands', 'uses' => array ( 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'exitcode' => 'App\\Framework\\Console\\ExitCode', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'schemacomparator' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Console\\ExitCode', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceConnection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetConnection', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceSchema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetSchema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detailed', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 0 => '\'db:schema:diff\'', 1 => '\'Display schema differences between two databases\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/MigrationGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Comparison\\MigrationGenerator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generates migration code from schema differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( 'migrationversion' => 'App\\Framework\\Database\\Migration\\MigrationVersion', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateMigration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate migration code from schema differences * * @param SchemaDifference $difference The schema differences * @param string $className The name of the migration class * @param string|null $description The description of the migration * @param MigrationVersion|null $version The version of the migration (generated if null) * @return string The generated migration code */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( 'migrationversion' => 'App\\Framework\\Database\\Migration\\MigrationVersion', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'difference', 'type' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaDifference', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'version', 'type' => '?App\\Framework\\Database\\Migration\\MigrationVersion', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaComparator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaComparator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compares database schemas and identifies differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new schema comparator */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceConnection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetConnection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compare', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compare the schemas of the source and target databases * * @param string|null $sourceSchema The schema name in the source database (null for default) * @param string|null $targetSchema The schema name in the target database (null for default) * @return SchemaDifference The differences between the schemas */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaDifference', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceSchema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetSchema', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/SchemaDifference.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Comparison\\SchemaDifference', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents differences between two database schemas */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new schema difference * * @param string $sourceSchema The source schema name * @param string $targetSchema The target schema name * @param array $missingTables Tables that exist in the source but not in the target * @param array $extraTables Tables that exist in the target but not in the source * @param array $tableDifferences Differences in tables that exist in both schemas */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceSchema', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetSchema', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'missingTables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extraTables', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableDifferences', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasDifferences', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if there are any differences between the schemas */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a summary of the differences * * @return array Summary of the differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a detailed description of the differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Comparison/TableDifference.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Comparison\\TableDifference', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents differences between two database tables */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new table difference * * @param string $tableName The name of the table * @param array> $missingColumns Columns that exist in the source but not in the target * @param array> $extraColumns Columns that exist in the target but not in the source * @param array>> $modifiedColumns Columns that exist in both but have differences * @param array> $missingIndexes Indexes that exist in the source but not in the target * @param array> $extraIndexes Indexes that exist in the target but not in the source * @param array>> $modifiedIndexes Indexes that exist in both but have differences * @param array> $missingForeignKeys Foreign keys that exist in the source but not in the target * @param array> $extraForeignKeys Foreign keys that exist in the target but not in the source * @param array>> $modifiedForeignKeys Foreign keys that exist in both but have differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tableName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'missingColumns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extraColumns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'modifiedColumns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'missingIndexes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extraIndexes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'modifiedIndexes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'missingForeignKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extraForeignKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'modifiedForeignKeys', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasDifferences', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if there are any differences in the table */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a summary of the differences * * @return array Summary of the differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a detailed description of the differences */', 'namespace' => 'App\\Framework\\Database\\Schema\\Comparison', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyAction.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\ForeignKeyAction', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CASCADE', 'value' => '\'CASCADE\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SET_NULL', 'value' => '\'SET NULL\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RESTRICT', 'value' => '\'RESTRICT\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NO_ACTION', 'value' => '\'NO ACTION\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SET_DEFAULT', 'value' => '\'SET DEFAULT\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/ForeignKeyDefinition.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\ForeignKeyDefinition', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'columns', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'referencedTable', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'referencedColumns', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'onUpdate', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Database\\Schema\\ForeignKeyAction', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'onDelete', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Database\\Schema\\ForeignKeyAction', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'references', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'on', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onUpdate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'App\\Framework\\Database\\Schema\\ForeignKeyAction', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onDelete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'App\\Framework\\Database\\Schema\\ForeignKeyAction', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cascadeOnUpdate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cascadeOnDelete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'nullOnDelete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'restrictOnDelete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'name', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexDefinition.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Advanced index definition with support for partial indexes, functional indexes, * and database-specific options */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var string|null The name of the index */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'columns', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var array The columns to index */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'type', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var AdvancedIndexType The type of index */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'whereClause', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var string|null WHERE clause for partial indexes */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'options', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var array Database-specific options */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'isFunctional', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var bool Whether this is a functional index */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => 'bool', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'expressions', ), 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @var array Expressions for functional indexes */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new advanced index definition * * @param string|null $name The name of the index * @param array $columns The columns to index * @param AdvancedIndexType $type The type of index * @param string|null $whereClause WHERE clause for partial indexes * @param array $options Database-specific options * @param bool $isFunctional Whether this is a functional index * @param array $expressions Expressions for functional indexes */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'whereClause', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isFunctional', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expressions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a standard index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param AdvancedIndexType $type The type of index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'partial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a partial index with a WHERE clause * * @param string|null $name The name of the index * @param array $columns The columns to index * @param AdvancedIndexType $type The type of index * @param string $whereClause WHERE clause for the partial index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'whereClause', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'functional', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a functional index with expressions * * @param string|null $name The name of the index * @param AdvancedIndexType $type The type of index * @param array $expressions SQL expressions for the functional index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expressions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'gin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a PostgreSQL GIN index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'gist', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a PostgreSQL GiST index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'brin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a PostgreSQL BRIN index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'spgist', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a PostgreSQL SP-GiST index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'btree', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a MySQL BTREE index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rtree', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a MySQL RTREE index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a MySQL HASH index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param array $options Additional options * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate SQL for this index * * @param string $driver The database driver (mysql, pgsql, sqlite) * @param string $table The table name * @return string The SQL statement */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/AdvancedIndexType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Advanced index types including database-specific types */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PRIMARY', 'value' => '\'primary\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UNIQUE', 'value' => '\'unique\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INDEX', 'value' => '\'index\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FULLTEXT', 'value' => '\'fulltext\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SPATIAL', 'value' => '\'spatial\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GIN', 'value' => '\'gin\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'GIST', 'value' => '\'gist\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BRIN', 'value' => '\'brin\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HASH', 'value' => '\'hash\'', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SPGIST', 'value' => '\'spgist\'', 'phpDoc' => NULL, )), 10 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BTREE', 'value' => '\'btree\'', 'phpDoc' => NULL, )), 11 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RTREE', 'value' => '\'rtree\'', 'phpDoc' => NULL, )), 12 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HASH_MYSQL', 'value' => '\'hash_mysql\'', 'phpDoc' => NULL, )), 13 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PARTIAL', 'value' => '\'partial\'', 'phpDoc' => NULL, )), 14 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FUNCTIONAL', 'value' => '\'functional\'', 'phpDoc' => NULL, )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSupportedBy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this index type is supported by the given database driver */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the SQL keyword for this index type */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a description of this index type */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexRecommender.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexRecommender', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Recommends indexes based on query patterns */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'advancedindextype' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'mysqlindex' => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 'postgresqlindex' => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 'sqliteindex' => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new index recommender */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'advancedindextype' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'mysqlindex' => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 'postgresqlindex' => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 'sqliteindex' => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'queryLogger', 'type' => '?App\\Framework\\Database\\Profiling\\QueryLogger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get index recommendations based on query patterns * * @param string|null $table Optional table name to filter results * @param int $minQueryCount Minimum number of times a query pattern must be seen to generate a recommendation * @param float $minExecutionTime Minimum execution time (in seconds) for a query to be considered slow * @return array> Index recommendations * @throws DatabaseException If the database doesn\'t support index recommendations */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'advancedindextype' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'mysqlindex' => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 'postgresqlindex' => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 'sqliteindex' => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minQueryCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minExecutionTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate SQL for creating recommended indexes * * @param array> $recommendations The index recommendations * @return array SQL statements for creating the recommended indexes */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'advancedindextype' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'mysqlindex' => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 'postgresqlindex' => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 'sqliteindex' => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeQuery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyze a specific query and recommend indexes * * @param string $sql The SQL query to analyze * @param array $params The query parameters * @return array> Index recommendations * @throws DatabaseException If the database doesn\'t support query analysis */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'querylogger' => 'App\\Framework\\Database\\Profiling\\QueryLogger', 'advancedindextype' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'mysqlindex' => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 'postgresqlindex' => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 'sqliteindex' => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sql', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'params', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/Analysis/IndexUsageAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\Analysis\\IndexUsageAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyzes index usage in the database */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new index usage analyzer */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIndexUsageStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get statistics about index usage * * @param string|null $table Optional table name to filter results * @return array> Index usage statistics * @throws DatabaseException If the database doesn\'t support index usage statistics */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUnusedIndexes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unused indexes * * @param string|null $table Optional table name to filter results * @param int $minDaysSinceCreation Minimum days since index creation to consider it unused * @return array> Unused indexes * @throws DatabaseException If the database doesn\'t support index usage statistics */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'minDaysSinceCreation', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDuplicateIndexes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get duplicate indexes * * @param string|null $table Optional table name to filter results * @return array> Duplicate indexes * @throws DatabaseException If the database doesn\'t support duplicate index detection */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOversizedIndexes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get oversized indexes * * @param string|null $table Optional table name to filter results * @param int $sizeThresholdMb Size threshold in MB to consider an index oversized * @return array> Oversized indexes * @throws DatabaseException If the database doesn\'t support index size statistics */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sizeThresholdMb', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFragmentedIndexes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get fragmented indexes * * @param string|null $table Optional table name to filter results * @param float $fragmentationThreshold Fragmentation threshold (0.0-1.0) to consider an index fragmented * @return array> Fragmented indexes * @throws DatabaseException If the database doesn\'t support index fragmentation statistics */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index\\Analysis', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fragmentationThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/MySQLIndex.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\MySQLIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * MySQL-specific index functionality */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'btree', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a standard B-tree index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a unique index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'primary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a primary key * * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fulltext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a FULLTEXT index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'spatial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a SPATIAL index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a HASH index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rtree', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a RTREE index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'functional', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a functional index on expressions * * @param string|null $name The name of the index * @param array $expressions The SQL expressions to index * @param AdvancedIndexType $type The type of index (default: standard B-tree) * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expressions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'keyBlockSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index key block size * * @param int $size The key block size in bytes * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'size', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index parser * * @param string $parser The parser name (e.g., \'ngram\') * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parser', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'algorithm', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index algorithm * * @param string $algorithm The algorithm (INPLACE, COPY, etc.) * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'algorithm', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index lock option * * @param string $lock The lock option (DEFAULT, NONE, SHARED, EXCLUSIVE) * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lock', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'comment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index comment * * @param string $comment The comment text * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'comment', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visible', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index visibility * * @param bool $visible Whether the index is visible to the optimizer * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'visible', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate SQL for this index * * @param string $table The table name * @return string The SQL statement */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefinition', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying index definition */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/PostgreSQLIndex.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\PostgreSQLIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * PostgreSQL-specific index functionality */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'btree', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a standard B-tree index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a unique index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'gin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a GIN index (Generalized Inverted Index) * Useful for indexing array values, full-text search, and JSON * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'gist', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a GiST index (Generalized Search Tree) * Useful for geometric data, ranges, and other complex data types * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'brin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a BRIN index (Block Range Index) * Useful for very large tables with natural ordering * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'spgist', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a SP-GiST index (Space-Partitioned Generalized Search Tree) * Useful for clustered data * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a HASH index * Useful for equality comparisons * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'partial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a partial index with a WHERE clause * * @param string|null $name The name of the index * @param array $columns The columns to index * @param string $whereClause The WHERE clause for the partial index * @param AdvancedIndexType $type The type of index (default: standard B-tree) * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'whereClause', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'functional', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a functional index on expressions * * @param string|null $name The name of the index * @param array $expressions The SQL expressions to index * @param AdvancedIndexType $type The type of index (default: standard B-tree) * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expressions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fulltext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a full-text search index * * @param string|null $name The name of the index * @param array $columns The columns to index * @param string|null $config The text search configuration (default: \'english\') * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'spatial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a spatial index for geographic data * * @param string|null $name The name of the index * @param array $columns The geometry columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'include', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a INCLUDE clause to the index * This allows including non-key columns in the index for covering queries * * @param array $columns The columns to include * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fillfactor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the FILLFACTOR for the index * This determines how full the index pages are packed * * @param int $factor The fill factor (10-100) * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'factor', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'concurrently', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Make the index CONCURRENTLY * This builds the index without locking out writes * * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tablespace', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the TABLESPACE for the index * * @param string $tablespace The tablespace name * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tablespace', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate SQL for this index * * @param string $table The table name * @return string The SQL statement */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefinition', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying index definition */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Index/SQLiteIndex.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Index\\SQLiteIndex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * SQLite-specific index functionality */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a standard index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'unique', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a unique index * * @param string|null $name The name of the index * @param array $columns The columns to index * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'partial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a partial index with a WHERE clause * * @param string|null $name The name of the index * @param array $columns The columns to index * @param string $whereClause The WHERE clause for the partial index * @param bool $unique Whether the index is unique * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'whereClause', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unique', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'ifNotExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the index to be created IF NOT EXISTS * * @return self */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate SQL for this index * * @param string $table The table name * @return string The SQL statement */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefinition', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the underlying index definition */', 'namespace' => 'App\\Framework\\Database\\Schema\\Index', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\Schema\\Index\\AdvancedIndexDefinition', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexDefinition.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\IndexDefinition', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'name', ), 'phpDoc' => NULL, 'type' => '?string', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'columns', ), 'phpDoc' => NULL, 'type' => 'array', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'type', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Database\\Schema\\IndexType', 'public' => true, 'private' => false, 'static' => false, 'readonly' => false, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'columns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Database\\Schema\\IndexType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/IndexType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\IndexType', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PRIMARY', 'value' => '\'primary\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UNIQUE', 'value' => '\'unique\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INDEX', 'value' => '\'index\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FULLTEXT', 'value' => '\'fulltext\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SPATIAL', 'value' => '\'spatial\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/MySQLSchemaCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\MySQLSchemaCompiler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Schema\\SchemaCompiler', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string|array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/PostgreSQLSchemaCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\PostgreSQLSchemaCompiler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Schema\\SchemaCompiler', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string|array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SQLiteSchemaCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\SQLiteSchemaCompiler', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\Schema\\SchemaCompiler', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string|array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/Schema.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\Schema', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Database schema builder for migrations */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new table * @param string $table * @param callable(Blueprint): void $callback */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'table', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Modify an existing table * @param string $table * @param callable(Blueprint): void $callback */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'drop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Drop a table */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropIfExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Drop a table if it exists */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rename', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rename a table */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'from', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'to', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasTable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if table exists */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasColumn', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if column exists */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'table', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'column', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'execute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute all schema commands */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get SQL statements without executing */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'altertablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\AlterTableCommand', 'createtablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\CreateTableCommand', 'droptablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\DropTableCommand', 'renametablecommand' => 'App\\Framework\\Database\\Schema\\Commands\\RenameTableCommand', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Schema/SchemaCompiler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Schema\\SchemaCompiler', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'compile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compile a schema command to SQL */', 'namespace' => 'App\\Framework\\Database\\Schema', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string|array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'command', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/EntitySerializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Serialization\\EntitySerializer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Serializer for database entities with support for complex types */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'serialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Serialize entity to array format suitable for caching */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deserialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Deserialize array data back to entity object */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'serializeCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Serialize array of entities */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deserializeCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Deserialize array of entities */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'serializedEntities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntityHash', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache-friendly hash of entity for versioning */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCompatible', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if serialized data is compatible with current class structure */', 'namespace' => 'App\\Framework\\Database\\Serialization', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', 'reflectionclass' => 'ReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entityClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Serialization/SerializationException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Serialization\\SerializationException', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidData', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'classMismatch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expected', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actual', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'missingProperty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'class', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/SimpleIdGenerator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\SimpleIdGenerator', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'random', 'type' => 'App\\Framework\\Random\\RandomGenerator', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate a new database ID. * * @return string 32-character hexadecimal database ID */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'randomgenerator' => 'App\\Framework\\Random\\RandomGenerator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredFunctionException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\StoredProcedure\\Exception\\StoredFunctionException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base exception for stored function errors */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFromError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored function error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executionError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored function execution error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'creationError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored function creation error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'notFound', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored function not found error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidReturnType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for an invalid return type */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectedType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actualType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/Exception/StoredProcedureException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\StoredProcedure\\Exception\\StoredProcedureException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base exception for stored procedure errors */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFromError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored procedure error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executionError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored procedure execution error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'creationError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored procedure creation error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'notFound', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new exception for a stored procedure not found error */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure\\Exception', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/ResultMapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\StoredProcedure\\ResultMapper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Maps database results to PHP objects */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mapToObjects', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map a database result to an array of objects of the specified class * * @template T of object * @param ResultInterface $result The database result * @param class-string $className The class to map to * @return array Array of mapped objects */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'App\\Framework\\Database\\ResultInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mapToObject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map a database result to a single object of the specified class * * @template T of object * @param ResultInterface $result The database result * @param class-string $className The class to map to * @return T|null The mapped object or null if no result */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'App\\Framework\\Database\\ResultInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mapToAssociativeArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map a database result to an associative array * * @param ResultInterface $result The database result * @return array The mapped associative array */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'App\\Framework\\Database\\ResultInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'mapToAssociativeArrays', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Map a database result to an array of associative arrays * * @param ResultInterface $result The database result * @return array> Array of mapped associative arrays */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'result', 'type' => 'App\\Framework\\Database\\ResultInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureDefinition.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Defines a stored procedure or function for database management */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createProcedure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new stored procedure definition */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new stored function definition */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withParameter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a parameter to the stored procedure/function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withBody', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the SQL body of the stored procedure/function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'body', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'returnsType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the return type for a function * Only applicable for functions, not procedures */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the name of the stored procedure/function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the parameters of the stored procedure/function * * @return array Parameters with their types */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBody', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the SQL body of the stored procedure/function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReturnType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the return type of the function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Generate SQL for creating the stored procedure/function * * @param string $driver The database driver name (mysql, pgsql, sqlite) * @return string The SQL statement to create the stored procedure/function */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'driver', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureExecutor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureExecutor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Executes stored procedures and functions */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeProcedure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored procedure * * @param string $procedureName Name of the stored procedure * @param array $parameters Named parameters for the procedure * @return ResultInterface The result of the procedure execution * @throws DatabaseException If the procedure execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored function * * @param string $functionName Name of the stored function * @param array $parameters Named parameters for the function * @return mixed The scalar result of the function * @throws DatabaseException If the function execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a stored procedure or function in the database * * @param StoredProcedureDefinition $definition The procedure/function definition * @throws DatabaseException If the creation fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'definition', 'type' => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureDefinition', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropProcedure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Drop a stored procedure * * @param string $procedureName Name of the stored procedure * @throws DatabaseException If the drop fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Drop a stored function * * @param string $functionName Name of the stored function * @throws DatabaseException If the drop fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'procedureExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a stored procedure exists * * @param string $procedureName Name of the stored procedure * @return bool True if the procedure exists */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'functionExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a stored function exists * * @param string $functionName Name of the stored function * @return bool True if the function exists */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllProcedures', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a list of all stored procedures * * @return array List of procedure names */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllFunctions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a list of all stored functions * * @return array List of function names */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/StoredProcedure/StoredProcedureManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\StoredProcedure\\StoredProcedureManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Manages stored procedures and functions */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => '?App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createProcedure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new stored procedure * * @param string $name The name of the procedure * @param callable(StoredProcedureDefinition): StoredProcedureDefinition $definitionCallback Callback to configure the procedure * @throws DatabaseException If the procedure creation fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'definitionCallback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new stored function * * @param string $name The name of the function * @param callable(StoredProcedureDefinition): StoredProcedureDefinition $definitionCallback Callback to configure the function * @throws DatabaseException If the function creation fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'definitionCallback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeProcedureAndMapToObjects', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored procedure and map the results to objects * * @template T of object * @param string $procedureName The name of the procedure * @param array $parameters The parameters for the procedure * @param class-string $className The class to map results to * @return array The mapped results * @throws DatabaseException If the procedure execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeProcedureAndMapToObject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored procedure and map the result to a single object * * @template T of object * @param string $procedureName The name of the procedure * @param array $parameters The parameters for the procedure * @param class-string $className The class to map the result to * @return T|null The mapped result or null if no result * @throws DatabaseException If the procedure execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeProcedure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored procedure and return the raw result * * @param string $procedureName The name of the procedure * @param array $parameters The parameters for the procedure * @return ResultInterface The raw result * @throws DatabaseException If the procedure execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\ResultInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeProcedureAndMapToArrays', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored procedure and map the results to associative arrays * * @param string $procedureName The name of the procedure * @param array $parameters The parameters for the procedure * @return array> The mapped results * @throws DatabaseException If the procedure execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a stored function and return the result * * @param string $functionName The name of the function * @param array $parameters The parameters for the function * @return mixed The function result * @throws DatabaseException If the function execution fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parameters', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropProcedure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Drop a stored procedure * * @param string $procedureName The name of the procedure * @throws DatabaseException If the drop fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dropFunction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Drop a stored function * * @param string $functionName The name of the function * @throws DatabaseException If the drop fails */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'procedureExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a stored procedure exists * * @param string $procedureName The name of the procedure * @return bool True if the procedure exists */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'procedureName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'functionExists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if a stored function exists * * @param string $functionName The name of the function * @return bool True if the function exists */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'functionName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllProcedures', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a list of all stored procedures * * @return array List of procedure names */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllFunctions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get a list of all stored functions * * @return array List of function names */', 'namespace' => 'App\\Framework\\Database\\StoredProcedure', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'resultinterface' => 'App\\Framework\\Database\\ResultInterface', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/Transaction.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\Transaction', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'run', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/EmailCaster.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\TypeCaster\\EmailCaster', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDatabase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDatabase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supports', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/JsonCaster.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\TypeCaster\\JsonCaster', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDatabase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDatabase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supports', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/PhoneNumberCaster.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\TypeCaster\\PhoneNumberCaster', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supports', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDatabase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Domain\\Common\\ValueObject\\PhoneNumber', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDatabase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDatabase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert einen Datenbank-Wert zu einem Value Object */', 'namespace' => 'App\\Framework\\Database\\TypeCaster', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toDatabase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert ein Value Object zu einem Datenbank-Wert */', 'namespace' => 'App\\Framework\\Database\\TypeCaster', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supports', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob der Caster für den gegebenen Typ zuständig ist */', 'namespace' => 'App\\Framework\\Database\\TypeCaster', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeCaster/TypeCasterRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\TypeCaster\\TypeCasterRegistry', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'register', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'casterClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'caster', 'type' => 'App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'casterClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'casterClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCasterForType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet automatisch den passenden Caster für einen Typ */', 'namespace' => 'App\\Framework\\Database\\TypeCaster', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Database\\TypeCaster\\TypeCasterInterface', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/TypeConverter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\TypeConverter', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'casterRegistry', 'type' => '?App\\Framework\\Database\\TypeCaster\\TypeCasterRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'convertValue', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'convertToDatabase', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert Value Objects zurück zu Datenbank-Werten */', 'namespace' => 'App\\Framework\\Database', 'uses' => array ( 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'propertymetadata' => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', 'typecasterregistry' => 'App\\Framework\\Database\\TypeCaster\\TypeCasterRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'property', 'type' => 'App\\Framework\\Database\\Metadata\\PropertyMetadata', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/BulkOperations.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\UnitOfWork\\BulkOperations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bulk operations for optimized database performance */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bulkInsert', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bulk insert entities of the same type * @param array $entities */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bulkUpdate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bulk update entities of the same type * @param array $entities */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bulkDelete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bulk delete entities of the same type * @param array $entities */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entities', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'connection', 'type' => 'App\\Framework\\Database\\ConnectionInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/ChangeTracker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Tracks entity changes for Unit of Work pattern using WeakMaps for optimal memory management */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackNew', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Track a new entity */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'trackClean', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Track a clean entity (just loaded from database) */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markDirty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mark entity as modified */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markDeleted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mark entity for deletion */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detach', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detach entity from tracking */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntityState', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current entity state */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Database\\UnitOfWork\\EntityState', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasChanges', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if entity has changes compared to original data */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectChanges', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Auto-detect changes by comparing current vs original data */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntitiesByState', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get entities by state for bulk operations */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'state', 'type' => 'App\\Framework\\Database\\UnitOfWork\\EntityState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllTrackedEntities', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all tracked entities with their states */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all tracked entities (after successful commit) */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'markClean', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset entity to clean state (after successful save) */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get tracking statistics for debugging */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasAnyChanges', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if there are any changes to commit */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/EntityState.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Database\\UnitOfWork\\EntityState', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Entity state tracking for Unit of Work pattern */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NEW', 'value' => '\'new\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEAN', 'value' => '\'clean\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DIRTY', 'value' => '\'dirty\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DELETED', 'value' => '\'deleted\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DETACHED', 'value' => '\'detached\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWork.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Unit of Work implementation for transactional entity management */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'changeTracker', 'type' => 'App\\Framework\\Database\\UnitOfWork\\ChangeTracker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bulkOperations', 'type' => 'App\\Framework\\Database\\UnitOfWork\\BulkOperations', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'persist', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Register a new entity for insertion */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'remove', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Mark entity for deletion */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Merge entity (mark as managed and detect changes) */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detach', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Detach entity from unit of work */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'contains', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if entity is managed by this unit of work */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entity', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flush', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Flush changes to database without committing transaction */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'commit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Commit transaction and clear change tracker */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'rollback', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Rollback transaction and reset change tracker */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setAutoCommit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enable/disable auto-commit mode */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'autoCommit', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isAutoCommit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if auto-commit is enabled */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unit of work statistics */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all tracked entities */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'connectioninterface' => 'App\\Framework\\Database\\ConnectionInterface', 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'databaseexception' => 'App\\Framework\\Database\\Exception\\DatabaseException', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Database/UnitOfWork/UnitOfWorkFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWorkFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory for creating UnitOfWork instances */', 'namespace' => 'App\\Framework\\Database\\UnitOfWork', 'uses' => array ( 'databasemanager' => 'App\\Framework\\Database\\DatabaseManager', 'hydratorinterface' => 'App\\Framework\\Database\\HydratorInterface', 'identitymap' => 'App\\Framework\\Database\\IdentityMap', 'metadataregistry' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'typeconverter' => 'App\\Framework\\Database\\TypeConverter', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Database\\UnitOfWork\\UnitOfWork', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'databaseManager', 'type' => 'App\\Framework\\Database\\DatabaseManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadataRegistry', 'type' => 'App\\Framework\\Database\\Metadata\\MetadataRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'identityMap', 'type' => 'App\\Framework\\Database\\IdentityMap', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hydrator', 'type' => 'App\\Framework\\Database\\HydratorInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'typeConverter', 'type' => 'App\\Framework\\Database\\TypeConverter', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Clock.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\Clock', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'now', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die aktuelle Zeit zurück. * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erzeugt ein DateTimeImmutable-Objekt aus einem Zeitstempel. * * @param Timestamp $timestamp Der Zeitstempel als Value Object * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erzeugt ein DateTimeImmutable-Objekt aus einem String im angegebenen Format. * * @param string $dateTime Der zu parsende Zeitstring * @param string|null $format Optionales Format für die Analyse * @return DateTimeImmutable * @throws InvalidDateTimeException wenn das Parsen fehlschlägt * @throws InvalidTimezoneException wenn eine angegebene Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'today', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'yesterday', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tomorrow', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'time', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den aktuellen Zeitstempel als Timestamp Value Object zurück. */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/ClockInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\ClockInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Config\\AppConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DateTime\\Clock', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initTimer', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DateTime\\Timer', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateRange.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\DateRange', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param DateTimeImmutable $start Startdatum des Bereichs * @param DateTimeImmutable $end Enddatum des Bereichs * @throws InvalidArgumentException wenn das Enddatum vor dem Startdatum liegt */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'start', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'end', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromStrings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erzeugt einen DateRange aus zwei Datumsstrings. * * @param string $start Startdatum als String * @param string $end Enddatum als String * @param DateTimeZone|string|null $timezone Optionale Zeitzone (Standard: UTC) * @return self * @throws InvalidTimezoneException * @throws InvalidDateTimeException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'start', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'end', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStart', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das Startdatum zurück. * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEnd', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das Enddatum zurück. * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'contains', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Überprüft, ob ein bestimmtes Datum im Bereich liegt. * * @param DateTimeInterface $date Das zu überprüfende Datum * @return bool */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'date', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'containsRange', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Überprüft, ob ein anderer Bereich vollständig in diesem Bereich enthalten ist. * * @param DateRange $range Der zu überprüfende Bereich * @return bool */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'range', 'type' => 'App\\Framework\\DateTime\\DateRange', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'overlaps', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Überprüft, ob sich dieser Bereich mit einem anderen überschneidet. * * @param DateRange $range Der zu überprüfende Bereich * @return bool */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'range', 'type' => 'App\\Framework\\DateTime\\DateRange', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet die Dauer dieses Bereichs. * * @return DateInterval */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateInterval', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDurationInSeconds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Dauer in Sekunden zurück. * * @return int */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', 'invalidargumentexception' => 'InvalidArgumentException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTime.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\DateTime', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein DateTimeImmutable-Objekt aus einem Zeitstempel. * * @param int $timestamp UNIX-Zeitstempel * @param DateTimeZone|string|null $timezone Optionale Zeitzone (verwendet Standard-Zeitzone wenn null) * @return DateTimeImmutable * @throws InvalidTimezoneException|InvalidDateTimeException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein DateTimeImmutable-Objekt aus einem String. * * @param string $dateTime Der zu parsende Zeitstring * @param DateTimeZone|string|null $timezone Optionale Zeitzone (verwendet Standard-Zeitzone wenn null) * @return DateTimeImmutable * @throws InvalidDateTimeException wenn das Parsen fehlschlägt * @throws InvalidTimezoneException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromFormat', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein DateTimeImmutable-Objekt aus einem String mit spezifischem Format. * * @param string $dateTime Der zu parsende Zeitstring * @param string $format Das erwartete Format * @param DateTimeZone|string|null $timezone Optionale Zeitzone (verwendet Standard-Zeitzone wenn null) * @return DateTimeImmutable * @throws InvalidDateTimeException wenn das Parsen fehlschlägt * @throws InvalidTimezoneException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDateTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein DateTimeImmutable-Objekt aus einem anderen DateTimeInterface. * * @param DateTimeInterface $dateTime Das zu konvertierende DateTime * @param DateTimeZone|string|null $timezone Optionale neue Zeitzone * @return DateTimeImmutable * @throws InvalidDateTimeException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createInterval', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein DateInterval-Objekt. * * @param string $interval Das Interval im ISO 8601 Format (z.B. \'P1D\', \'PT1H\') * @return DateInterval * @throws InvalidDateTimeException wenn das Interval ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateInterval', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createTimezone', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt eine DateTimeZone. * * @param DateTimeZone|string $timezone Die Zeitzone * @return DateTimeZone * @throws InvalidTimezoneException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateTimeZone', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefaultTimezone', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Standard-Zeitzone zurück. * * @return DateTimeZone */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'DateTimeZone', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setDefaultTimezone', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt eine neue Standard-Zeitzone. * * @param DateTimeZone|string $timezone Die neue Standard-Zeitzone * @throws InvalidTimezoneException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinterval' => 'DateInterval', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/DateTimeFormatter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\DateTimeFormatter', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param DateTimeZone|string|null $timezone Die zu verwendende Zeitzone (Standard: UTC) * @throws DateInvalidTimeZoneException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatIso8601', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert ein DateTime im ISO8601-Format. * * @param DateTimeInterface $dateTime Das zu formatierende DateTime * @return string * @throws DateMalformedStringException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatSql', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert ein DateTime im SQL-Datetime-Format. * * @param DateTimeInterface $dateTime Das zu formatierende DateTime * @return string * @throws DateMalformedStringException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatDate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert ein DateTime nur als Datum. * * @param DateTimeInterface $dateTime Das zu formatierende DateTime * @return string * @throws DateMalformedStringException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatTime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert ein DateTime nur als Zeit. * * @param DateTimeInterface $dateTime Das zu formatierende DateTime * @return string * @throws DateMalformedStringException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert ein DateTime in einem benutzerdefinierten Format. * * @param DateTimeInterface $dateTime Das zu formatierende DateTime * @param string $format Das Format-Pattern * @return string * @throws DateMalformedStringException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'DateTimeInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimezone', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die verwendete Zeitzone zurück. * * @return DateTimeZone */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'dateinvalidtimezoneexception' => 'DateInvalidTimeZoneException', 'datemalformedstringexception' => 'DateMalformedStringException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimeinterface' => 'DateTimeInterface', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeZone', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidDateTimeException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Exceptions/InvalidTimezoneException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'phpDoc' => NULL, 'abstract' => false, 'final' => false, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/FrozenClock.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\FrozenClock', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\DateTime\\Clock', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param DateTimeImmutable|string|null $time Die fixierte Zeit (Standard: aktuelle Zeit über SystemClock) * @param DateTimeZone|string|null $timezone Die zu verwendende Zeitzone (Standard: UTC) * @throws InvalidDateTimeException wenn die Zeit ungültig ist * @throws InvalidTimezoneException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'time', 'type' => 'DateTimeImmutable|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'now', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} * @throws InvalidTimezoneException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'today', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Today-Datum (00:00:00) basierend auf der gefrorenen Zeit. * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tomorrow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Tomorrow-Datum (00:00:00) basierend auf der gefrorenen Zeit. * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'yesterday', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Yesterday-Datum (00:00:00) basierend auf der gefrorenen Zeit. * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setTo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt die fixierte Zeit auf einen neuen Wert. * * @param DateTimeImmutable|string $time Die neue fixierte Zeit * @return self * @throws InvalidDateTimeException|InvalidTimezoneException wenn die Zeit ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'time', 'type' => 'DateTimeImmutable|string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'moveForward', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt die fixierte Zeit um eine bestimmte Zeit vorwärts. * * @param string $interval Eine DateInterval-kompatible Zeichenfolge (z.B. \'PT1H\' für eine Stunde) * @return self * @throws InvalidDateTimeException wenn das Interval ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'moveBackward', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewegt die fixierte Zeit um eine bestimmte Zeit zurück. * * @param string $interval Eine DateInterval-kompatible Zeichenfolge (z.B. \'PT1H\' für eine Stunde) * @return self * @throws InvalidDateTimeException|DateInvalidOperationException wenn das Interval ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'dateinvalidoperationexception' => 'DateInvalidOperationException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interval', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'time', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClock.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\HighResolutionClock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for high-resolution timing operations using hrtime() with Value Objects * * This interface provides monotonic, high-precision timing capabilities * that are perfect for performance measurements and are unaffected by * system clock changes. All methods return or accept Value Objects for type safety. */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hrtime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get high-resolution time as Duration * Uses hrtime() for monotonic, high-precision timing * * @return Duration High-resolution Duration since arbitrary point */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'measureDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Measure duration of a callable execution * * @param callable $callback Function to measure * @return array{result: mixed, duration: Duration} Result and duration */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'benchmark', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * High-resolution benchmark helper * * @param callable $callback Function to benchmark * @param int $iterations Number of iterations * @return array{total: Duration, average: Duration, min: Duration, max: Duration} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/HighResolutionClockInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\HighResolutionClockInitializer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\DateTime\\HighResolutionClock', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemClock.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\SystemClock', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\DateTime\\Clock', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param DateTimeZone|string|null $timezone Die zu verwendende Zeitzone (Standard: UTC) * @throws InvalidTimezoneException wenn die Zeitzone ungültig ist */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timezone', 'type' => 'DateTimeZone|string|null|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'now', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} * @throws InvalidDateTimeException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} * @throws InvalidTimezoneException|InvalidDateTimeException */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dateTime', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'today', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Today-Datum (00:00:00). * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tomorrow', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Tomorrow-Datum (00:00:00). * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'yesterday', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Yesterday-Datum (00:00:00). * * @return DateTimeImmutable */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'invaliddatetimeexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidDateTimeException', 'invalidtimezoneexception' => 'App\\Framework\\DateTime\\Exceptions\\InvalidTimezoneException', 'datetimeimmutable' => 'DateTimeImmutable', 'datetimezone' => 'DateTimeZone', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'time', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemHighResolutionClock.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\SystemHighResolutionClock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * System implementation of HighResolutionClock using hrtime() for monotonic timing * * This implementation provides high-precision timing capabilities that are * unaffected by system clock changes, making it ideal for performance measurements. */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\DateTime\\HighResolutionClock', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hrtime', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'measureDuration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'benchmark', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritDoc} */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/SystemTimer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\SystemTimer', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\DateTime\\Timer', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sleep', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Timer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\Timer', 'phpDoc' => NULL, 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sleep', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Pausiert die Ausführung für die angegebene Duration. * * @param Duration $duration Die Pausendauer als Duration Value Object */', 'namespace' => 'App\\Framework\\DateTime', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/DateTime/Timezone.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\DateTime\\Timezone', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UTC', 'value' => '\'UTC\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'EuropeBerlin', 'value' => '\'Europe/Berlin\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugEntry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\DebugEntry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repräsentiert einen einzelnen Debug-Eintrag mit allen relevanten Informationen. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt einen neuen Debug-Eintrag */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'line', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Debug\\EntryType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Debug-Daten zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLabel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt das Label zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Pfad der Datei zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLine', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Zeilennummer zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFilename', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Dateinamen ohne Pfad zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Zeitstempel zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'DateTimeImmutable', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFormattedTimestamp', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den formatierten Zeitstempel zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den aktuellen Speicherverbrauch zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPeakMemory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den höchsten Speicherverbrauch zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Typ des Eintrags zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Debug\\EntryType', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt ein Array mit allen Debug-Daten */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\DebugRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registry-Klasse zum Speichern aller Debug-Einträge. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addEntry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Fügt einen Debug-Eintrag hinzu */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEntries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle gespeicherten Debug-Einträge zurück * * @return DebugEntry[] */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Anzahl der gespeicherten Einträge zurück */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Löscht alle gespeicherten Einträge */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setMaxEntries', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Setzt die maximale Anzahl an Einträgen */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxEntries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/DebugServiceProvider.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\DebugServiceProvider', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Service Provider für die Einbindung des Debug-Moduls. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'consoleformatter' => 'App\\Framework\\Debug\\Formatters\\ConsoleFormatter', 'htmlformatter' => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', 'consoleoutput' => 'App\\Framework\\Debug\\Outputs\\ConsoleOutput', 'htmloutput' => 'App\\Framework\\Debug\\Outputs\\HtmlOutput', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'register', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registriert das Debug-Modul in der Anwendung. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'consoleformatter' => 'App\\Framework\\Debug\\Formatters\\ConsoleFormatter', 'htmlformatter' => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', 'consoleoutput' => 'App\\Framework\\Debug\\Outputs\\ConsoleOutput', 'htmloutput' => 'App\\Framework\\Debug\\Outputs\\HtmlOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'configureForProduction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konfiguriert das Debug-Modul für die Produktionsumgebung. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'consoleformatter' => 'App\\Framework\\Debug\\Formatters\\ConsoleFormatter', 'htmlformatter' => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', 'consoleoutput' => 'App\\Framework\\Debug\\Outputs\\ConsoleOutput', 'htmloutput' => 'App\\Framework\\Debug\\Outputs\\HtmlOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'configureForDevelopment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konfiguriert das Debug-Modul für die Entwicklungsumgebung. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'consoleformatter' => 'App\\Framework\\Debug\\Formatters\\ConsoleFormatter', 'htmlformatter' => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', 'consoleoutput' => 'App\\Framework\\Debug\\Outputs\\ConsoleOutput', 'htmloutput' => 'App\\Framework\\Debug\\Outputs\\HtmlOutput', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Debugger.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\Debugger', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hauptklasse für das Framework-weite Debugging. * Bietet eine übersichtlichere Alternative zu var_dump. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dump', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hauptfunktion für das Debugging - übersichtlichere Alternative zu var_dump */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'die', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dumpArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Spezielle Funktion für Arrays mit Formatierung */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dumpObject', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Debug für Objekte mit Klasseninformationen */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'log', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Einfaches Logging für Debugging-Zwecke */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'showHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Zeigt eine Übersicht aller Debug-Aufrufe */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'configure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konfiguration des Debuggers */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enabled', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => '?App\\Framework\\Debug\\OutputInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => '?App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft, ob der Debugger aktiviert ist */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'disable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Deaktiviert den Debugger */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'enable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aktiviert den Debugger */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/EntryType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\EntryType', 'scalarType' => NULL, 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für verschiedene Debug-Eintragstypen. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STANDARD', 'value' => NULL, 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ARRAY', 'value' => NULL, 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OBJECT', 'value' => NULL, 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOG', 'value' => NULL, 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TRACE', 'value' => NULL, 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/ConsoleFormatter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\Formatters\\ConsoleFormatter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert Debug-Einträge für Konsolen-Ausgabe. */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/FormatterInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für alle Debug-Formatierungen. */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert einen Debug-Eintrag zur Ausgabe */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert eine Liste von Debug-Einträgen * * @param DebugEntry[] $entries */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert einen beliebigen Wert zur Ausgabe */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Formatters/HtmlFormatter.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\Formatters\\HtmlFormatter', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Formatiert Debug-Einträge für HTML-Ausgabe. */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'format', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'formatValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Formatters', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'entrytype' => 'App\\Framework\\Debug\\EntryType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/OutputInterface.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\OutputInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für alle Debug-Ausgabemethoden. */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'output', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt einen Debug-Eintrag aus */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'outputHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt eine Historie von Debug-Einträgen aus * * @param DebugEntry[] $entries */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'outputRaw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt einen Rohtext aus */', 'namespace' => 'App\\Framework\\Debug', 'uses' => array ( 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'text', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/ConsoleOutput.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\Outputs\\ConsoleOutput', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ausgabeklasse für Konsolen-Umgebungen. */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Debug\\OutputInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'output', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'outputHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'outputRaw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'text', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/Outputs/HtmlOutput.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Debug\\Outputs\\HtmlOutput', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ausgabeklasse für HTML-Umgebungen. */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Debug\\OutputInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'output', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entry', 'type' => 'App\\Framework\\Debug\\DebugEntry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'outputHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'entries', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'formatter', 'type' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'outputRaw', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Debug\\Outputs', 'uses' => array ( 'debugentry' => 'App\\Framework\\Debug\\DebugEntry', 'formatterinterface' => 'App\\Framework\\Debug\\Formatters\\FormatterInterface', 'outputinterface' => 'App\\Framework\\Debug\\OutputInterface', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'text', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Debug/helpers.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'dd', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Debug und beende (dump and die) */', 'namespace' => NULL, 'uses' => array ( 'debugger' => 'App\\Framework\\Debug\\Debugger', ), 'constUses' => array ( ), )), 'byRef' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'debug', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Debug ohne beenden */', 'namespace' => NULL, 'uses' => array ( 'debugger' => 'App\\Framework\\Debug\\Debugger', ), 'constUses' => array ( ), )), 'byRef' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'debug_array', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Debug speziell für Arrays */', 'namespace' => NULL, 'uses' => array ( 'debugger' => 'App\\Framework\\Debug\\Debugger', ), 'constUses' => array ( ), )), 'byRef' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'debug_object', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Debug speziell für Objekte */', 'namespace' => NULL, 'uses' => array ( 'debugger' => 'App\\Framework\\Debug\\Debugger', ), 'constUses' => array ( ), )), 'byRef' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'object', 'type' => 'object', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'label', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'debug_log', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Einfaches Debug-Logging */', 'namespace' => NULL, 'uses' => array ( 'debugger' => 'App\\Framework\\Debug\\Debugger', ), 'constUses' => array ( ), )), 'byRef' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedFunctionNode::__set_state(array( 'name' => 'debug_history', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Debug-Historie anzeigen */', 'namespace' => NULL, 'uses' => array ( 'debugger' => 'App\\Framework\\Debug\\Debugger', ), 'constUses' => array ( ), )), 'byRef' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalysisResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ergebnis der Farbanalyse */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalColors', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colorsByFormat', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colorPalette', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'contrastAnalysis', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duplicateColors', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiversityScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Farbdiversität-Score zurück (0-100) */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConsistencyScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Konsistenz-Score zurück (0-100) */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getContrastComplianceScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Kontrast-Compliance-Score zurück (0-100) */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMostUsedFormats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die häufigsten Farbformate zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPaletteSummary', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Farbpaletten-Zusammenfassung zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWorstContrastPairs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die problematischsten Farbkombinationen zurück * @return array> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPrioritizedActions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt priorisierte Verbesserungs-Aktionen zurück * @return array> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFormatRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Format-Empfehlungen zurück * @return array> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für Export * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ColorAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\ColorAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Farben im Design System */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', 'csscolor' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'csspropertycategory' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeColors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert alle Farben im CSS */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', 'csscolor' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'csspropertycategory' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeColorHarmony', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert spezifische Farbharmonien */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', 'csscolor' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'csspropertycategory' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colors', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeAccessibility', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bewertet Farbzugänglichkeit */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', 'csscolor' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'csspropertycategory' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetectionResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ergebnis der Component-Pattern-Erkennung */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param ComponentPattern[] $bemComponents * @param ComponentPattern[] $utilityComponents * @param ComponentPattern[] $traditionalComponents */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalComponents', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bemComponents', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'utilityComponents', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'traditionalComponents', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'patternStatistics', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDominantPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die dominante Pattern-Methodik zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPatternDiversity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Pattern-Diversity-Score zurück (0-100) */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getConsistencyScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Konsistenz-Score zurück (0-100) */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getActionableRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt empfohlene Aktionen basierend auf der Analyse zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPatternDistribution', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Pattern-Verteilung zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für Export */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ComponentDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\ComponentDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt Component-Patterns in CSS */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'classnameparser' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'componentpatterntype' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNameParser', 'type' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectComponents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt alle Components im CSS */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'classnameparser' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'componentpatterntype' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeBemPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert spezifisch BEM-Patterns */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'classnameparser' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'componentpatterntype' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeUtilityPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Utility-Class-Patterns */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'classnameparser' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'componentpatterntype' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findComponentCandidates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet potenzielle Component-Candidates */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'classnameparser' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'componentpatterntype' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionCheckResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ergebnis der Convention-Prüfung */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overallScore', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'categoryScores', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'violations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conformanceLevel', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getViolationsBySeverity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gruppiert Violations nach Schweregrad * @return array>> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getWorstAreas', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die schlimmsten Problembereiche zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBestAreas', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die besten Bereiche zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPrioritizedActions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt priorisierte Action Items zurück * @return array> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getImprovementPotential', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet Verbesserungs-Potenzial * @return array> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für Export * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/ConventionChecker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\ConventionChecker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft CSS-Naming-Conventions und Code-Standards */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkConventions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft alle Conventions im CSS */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalysis.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Vollständige Design System Analyse - Haupt-Ergebnis-Klasse */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param FilePath[] $sourceFiles * @param CssParseResult[] $parseResults */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceFiles', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResults', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'combinedResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'componentAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conventionAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colorAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overallStatistics', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverallDesignSystemScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet Gesamt-Design-System-Score (0-100) */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaturityLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Reife-Stufe des Design Systems zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCriticalIssues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt kritische Problembereiche zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQuickWins', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Quick-Win-Verbesserungen zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDevelopmentRoadmap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Entwicklungsroadmap zurück */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exportiert vollständigen Report */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/DesignSystemAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Haupt-Analyzer für das Design System */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssParser', 'type' => 'App\\Framework\\Design\\Parser\\CssParser', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenAnalyzer', 'type' => 'App\\Framework\\Design\\Analyzer\\TokenAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'componentDetector', 'type' => 'App\\Framework\\Design\\Analyzer\\ComponentDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conventionChecker', 'type' => 'App\\Framework\\Design\\Analyzer\\ConventionChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colorAnalyzer', 'type' => 'App\\Framework\\Design\\Analyzer\\ColorAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeDesignSystem', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert ein komplettes Design System */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssFiles', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert ein einzelnes CSS-Verzeichnis */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\DesignSystemAnalysis', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recursive', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'quickAnalyze', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Schnelle Analyse nur für Statistiken */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssFiles', 'type' => 'string|array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalysisResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ergebnis der Token-Analyse */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalTokens', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokensByType', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenHierarchy', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'unusedTokens', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'missingTokens', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenUsage', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'usedTokens', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMostUsedTokenTypes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die häufigsten Token-Typen zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTokenCoverage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Token-Coverage-Statistiken zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendationPriorities', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Empfehlungs-Prioritäten zurück * @return array> */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für Export * @return array */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Analyzer/TokenAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Analyzer\\TokenAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analyzer für Design Tokens */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'designtoken' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'designtokentype' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyze', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Design Tokens im CSS */', 'namespace' => 'App\\Framework\\Design\\Analyzer', 'uses' => array ( 'cssparseresult' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'designtoken' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'designtokentype' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/Component.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Component\\Component', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'selector', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssRules', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Design\\Component\\ComponentCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'App\\Framework\\Design\\Component\\ComponentPattern', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'state', 'type' => 'App\\Framework\\Design\\Component\\ComponentState', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getId', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDisplayName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPreviewHtml', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentCategory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Component\\ComponentCategory', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BUTTON', 'value' => '\'button\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NAVIGATION', 'value' => '\'navigation\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FORM', 'value' => '\'form\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CARD', 'value' => '\'card\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FEEDBACK', 'value' => '\'feedback\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LAYOUT', 'value' => '\'layout\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TYPOGRAPHY', 'value' => '\'typography\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OTHER', 'value' => '\'other\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDisplayName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIcon', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentPattern.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Component\\ComponentPattern', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BEM', 'value' => '\'bem\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UTILITY', 'value' => '\'utility\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TRADITIONAL', 'value' => '\'traditional\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDisplayName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Component\\ComponentRegistry', 'phpDoc' => NULL, 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** @param Component[] $components */', 'namespace' => 'App\\Framework\\Design\\Component', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'components', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllComponents', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getByCategory', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Design\\Component\\ComponentCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getByPattern', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'App\\Framework\\Design\\Component\\ComponentPattern', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Design\\Component\\Component', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getComponentVariants', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCategoryCounts', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPatternCounts', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalComponents', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'groupByCategory', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'searchComponents', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'query', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Component/ComponentState.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Component\\ComponentState', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DEFAULT', 'value' => '\'default\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HOVER', 'value' => '\'hover\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FOCUS', 'value' => '\'focus\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ACTIVE', 'value' => '\'active\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DISABLED', 'value' => '\'disabled\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDisplayName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCssClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ComponentScanner.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ComponentScanner', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Scans CSS files to detect and catalog UI components */', 'namespace' => 'App\\Framework\\Design', 'uses' => array ( 'component' => 'App\\Framework\\Design\\Component\\Component', 'componentcategory' => 'App\\Framework\\Design\\Component\\ComponentCategory', 'componentpattern' => 'App\\Framework\\Design\\Component\\ComponentPattern', 'componentregistry' => 'App\\Framework\\Design\\Component\\ComponentRegistry', 'componentstate' => 'App\\Framework\\Design\\Component\\ComponentState', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanComponents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $cssFiles */', 'namespace' => 'App\\Framework\\Design', 'uses' => array ( 'component' => 'App\\Framework\\Design\\Component\\Component', 'componentcategory' => 'App\\Framework\\Design\\Component\\ComponentCategory', 'componentpattern' => 'App\\Framework\\Design\\Component\\ComponentPattern', 'componentregistry' => 'App\\Framework\\Design\\Component\\ComponentRegistry', 'componentstate' => 'App\\Framework\\Design\\Component\\ComponentState', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Component\\ComponentRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssFiles', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Initializer/DesignSystemInitializer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Initializer\\DesignSystemInitializer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Design System Service Initializer */', 'namespace' => 'App\\Framework\\Design\\Initializer', 'uses' => array ( 'classnameparser' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'custompropertyparser' => 'App\\Framework\\Design\\Parser\\CustomPropertyParser', 'coloranalyzer' => 'App\\Framework\\Design\\Service\\ColorAnalyzer', 'componentdetector' => 'App\\Framework\\Design\\Service\\ComponentDetector', 'conventionchecker' => 'App\\Framework\\Design\\Service\\ConventionChecker', 'designsystemanalyzer' => 'App\\Framework\\Design\\Service\\DesignSystemAnalyzer', 'tokenanalyzer' => 'App\\Framework\\Design\\Service\\TokenAnalyzer', 'container' => 'App\\Framework\\DI\\Container', 'initializer' => 'App\\Framework\\DI\\Initializer', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__invoke', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\DI\\Initializer', 'args' => array ( ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/ClassNameParser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst CSS-Klassen und erkennt Component-Patterns (BEM, ITCSS, etc.) */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'cssclass' => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractFromContent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert CSS-Klassennamen aus Content * @return array */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'cssclass' => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt Component-Patterns in den CSS-Klassen * @param array $classNames * @return array */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'cssclass' => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeConventions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert CSS-Klassen-Konventionen */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'cssclass' => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParseResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ergebnis eines CSS-Parsing-Vorgangs */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceFile', 'type' => 'App\\Framework\\Filesystem\\FilePath|string|null', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rules', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rawContent', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'statistics', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CssParser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Parser\\CssParser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst CSS-Dateien und extrahiert Regeln, Selektoren und Properties */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'cssproperty' => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 'cssrule' => 'App\\Framework\\Design\\ValueObjects\\CssRule', 'cssselector' => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customPropertyParser', 'type' => 'App\\Framework\\Design\\Parser\\CustomPropertyParser', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNameParser', 'type' => 'App\\Framework\\Design\\Parser\\ClassNameParser', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parseFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst eine CSS-Datei und gibt strukturierte Daten zurück */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'cssproperty' => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 'cssrule' => 'App\\Framework\\Design\\ValueObjects\\CssRule', 'cssselector' => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parseContent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst CSS-Content direkt */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'cssproperty' => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 'cssrule' => 'App\\Framework\\Design\\ValueObjects\\CssRule', 'cssselector' => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceFile', 'type' => '?App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parseFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst mehrere CSS-Dateien * @param array $filePaths * @return array */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'cssproperty' => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 'cssrule' => 'App\\Framework\\Design\\ValueObjects\\CssRule', 'cssselector' => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePaths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parseDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst alle CSS-Dateien in einem Verzeichnis * @return array */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'cssproperty' => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 'cssrule' => 'App\\Framework\\Design\\ValueObjects\\CssRule', 'cssselector' => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recursive', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Parser/CustomPropertyParser.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Parser\\CustomPropertyParser', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Parst CSS Custom Properties (CSS Variables) und konvertiert sie zu Design Tokens */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractFromContent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert alle Custom Properties aus CSS Content */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractFromFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert Custom Properties aus mehreren Dateien */', 'namespace' => 'App\\Framework\\Design\\Parser', 'uses' => array ( 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePaths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ColorAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Service\\ColorAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Farben in Design Systemen */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'colorformat' => 'App\\Framework\\Design\\ValueObjects\\ColorFormat', 'csscolor' => 'App\\Framework\\Design\\ValueObjects\\CssColor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzePalette', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'object', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateContrastRatio', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color1', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color2', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWcagCompliant', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'foreground', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'background', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'level', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findAccessibilityIssues', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectColorScheme', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'convertToHsl', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'convertToOklch', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateColorHarmony', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseColor', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeColorDistribution', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeColors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Main analysis method used by DesignSystemAnalyzer */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'colorformat' => 'App\\Framework\\Design\\ValueObjects\\ColorFormat', 'csscolor' => 'App\\Framework\\Design\\ValueObjects\\CssColor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => NULL, 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateNamingConventions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ComponentDetector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Service\\ComponentDetector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt und analysiert UI-Komponenten */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'cssclass' => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectBemComponents', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectUtilityPatterns', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectStructurePatterns', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeResponsivePatterns', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeComponentComplexity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeAtomicDesignPatterns', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateNamingConventions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectComponentRelationships', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggestImprovements', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeComponentReusability', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectComponents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Main analysis method used by DesignSystemAnalyzer */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'componentpattern' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'cssclass' => 'App\\Framework\\Design\\ValueObjects\\CssClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => NULL, 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/ConventionChecker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Service\\ConventionChecker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft Naming Conventions und Standards */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateBemNaming', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateKebabCase', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateCustomPropertyNaming', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateSemanticNaming', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateDesignTokenNaming', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateAccessibilityNaming', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateComponentHierarchy', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeNamingConsistency', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggestNamingImprovements', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateFrameworkConventions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssClasses', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'framework', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkConventions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Main analysis method used by DesignSystemAnalyzer */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => NULL, 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/DesignSystemAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Service\\DesignSystemAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Design System Analyzer Service */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'designsystemanalysis' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parser', 'type' => 'App\\Framework\\Design\\Parser\\CssParser', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenAnalyzer', 'type' => 'App\\Framework\\Design\\Service\\TokenAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'componentDetector', 'type' => 'App\\Framework\\Design\\Service\\ComponentDetector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conventionChecker', 'type' => 'App\\Framework\\Design\\Service\\ConventionChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colorAnalyzer', 'type' => 'App\\Framework\\Design\\Service\\ColorAnalyzer', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyze', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert ein Array von CSS-Dateien * * @param FilePath[] $cssFiles */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'designsystemanalysis' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssFiles', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert eine einzelne CSS-Datei */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'designsystemanalysis' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssFile', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeContent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert CSS-Content direkt */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'cssparser' => 'App\\Framework\\Design\\Parser\\CssParser', 'cssparseresult' => 'App\\Framework\\Design\\Parser\\CssParseResult', 'designsystemanalysis' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssContent', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceFile', 'type' => '?App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/Service/TokenAnalyzer.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\Service\\TokenAnalyzer', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Design Tokens */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 'designtoken' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'designtokentype' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'tokencategory' => 'App\\Framework\\Design\\ValueObjects\\TokenCategory', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'categorizeTokens', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $customProperties * @return array */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 'designtoken' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'designtokentype' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'tokencategory' => 'App\\Framework\\Design\\ValueObjects\\TokenCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeNamingPatterns', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $customProperties * @return array */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 'designtoken' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'designtokentype' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'tokencategory' => 'App\\Framework\\Design\\ValueObjects\\TokenCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'detectTokenRelationships', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateTokenValues', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTokenUsage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokens', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cssReferences', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggestOptimizations', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'generateTokenDocumentation', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokens', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateTokenCoverage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokens', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hardcodedValues', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateDesignSystemConsistency', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeTokens', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Main analysis method used by DesignSystemAnalyzer */', 'namespace' => 'App\\Framework\\Design\\Service', 'uses' => array ( 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'customproperty' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 'designtoken' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'designtokentype' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'tokencategory' => 'App\\Framework\\Design\\ValueObjects\\TokenCategory', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parseResult', 'type' => NULL, 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/BemType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\BemType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * BEM-Typen für CSS-Klassen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BLOCK', 'value' => '\'block\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ELEMENT', 'value' => '\'element\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MODIFIER', 'value' => '\'modifier\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ColorFormat.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\ColorFormat', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für Color Formate */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HEX', 'value' => '\'hex\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RGB', 'value' => '\'rgb\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RGBA', 'value' => '\'rgba\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HSL', 'value' => '\'hsl\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HSLA', 'value' => '\'hsla\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OKLCH', 'value' => '\'oklch\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NAMED', 'value' => '\'named\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CUSTOM_PROPERTY', 'value' => '\'custom_property\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPattern.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\ComponentPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für erkannte Component-Patterns */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createBem', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für BEM Component */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'blockName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'elements', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'modifiers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createUtility', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für Utility Component */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createComponent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für Traditional Component */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Klassennamen als Strings zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Pattern bestimmte Klasse enthält */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getComplexity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Pattern-Komplexität */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPatternInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Pattern-spezifische Informationen zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/ComponentPatternType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\ComponentPatternType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für Component Pattern Typen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BEM', 'value' => '\'bem\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'UTILITY', 'value' => '\'utility\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COMPONENT', 'value' => '\'component\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClass.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repräsentiert eine CSS-Klasse */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromSelector', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'selector', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBemBlock', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBemElement', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBemModifier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isUtilityClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemBlock', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemElement', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemModifier', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUtilityCategory', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getComponentType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamingConvention', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssClassName.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssClassName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für CSS-Klassennamen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBemBlock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Klasse BEM-Konvention folgt */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBemElement', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Klasse ein BEM-Element ist */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBemModifier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Klasse ein BEM-Modifier ist */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemBlock', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert BEM-Block-Namen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemElement', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert BEM-Element-Namen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemModifier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert BEM-Modifier-Namen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isUtilityClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob es eine Utility-Klasse ist (Tailwind-Style) */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUtilityCategory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt Utility-Kategorie */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getComponentType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erkennt Component-Typ basierend auf Namen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamingConvention', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Naming-Convention */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssColor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Value Object für CSS-Farben mit verschiedenen Formaten */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'originalValue', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'format', 'type' => 'App\\Framework\\Design\\ValueObjects\\ColorFormat', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rgbColor', 'type' => '?App\\Framework\\Core\\ValueObjects\\RGBColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hslValues', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'oklchValues', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namedColor', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customPropertyName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toRGB', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert die Farbe zu RGB wenn möglich */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Core\\ValueObjects\\RGBColor', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toHex', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Hex-Repräsentation zurück wenn möglich */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isTransparent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Farbe transparent ist */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCustomProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Farbe eine Custom Property ist */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCustomPropertyName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Custom Property Namen zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'rgbcolor' => 'App\\Framework\\Core\\ValueObjects\\RGBColor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssParseResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssParseResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Ergebnis des CSS-Parsing-Prozesses */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param CssRule[] $rules * @param DesignToken[] $customProperties * @param CssClassName[] $classNames */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'sourceFile', 'type' => '?App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rules', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customProperties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'rawContent', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllSelectors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle gefundenen Selektoren zurück * @return CssSelector[] */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllProperties', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle gefundenen Properties zurück * @return CssProperty[] */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRulesBySelectorType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filtert Regeln nach Selektor-Typ */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssSelectorType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPropertiesByCategory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filtert Properties nach Kategorie */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDesignTokensByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filtert Custom Properties nach Typ */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassNamesByPattern', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filtert CSS-Klassen nach Pattern */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getBemClasses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle BEM-Klassen zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUtilityClasses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Utility-Klassen zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getColorAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert verwendete Farben */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamingConventionAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert Naming-Konventionen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Statistiken über die geparsten Daten */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssProperty.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repräsentiert eine CSS-Property mit Namen und Wert */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCategory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kategorisiert die Property */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'usesCustomProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Property einen CSS Custom Property Wert verwendet */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCustomPropertyReferences', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert Custom Property Namen aus dem Wert */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toColor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu CssColor wenn es eine Farbproperty ist */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Design\\ValueObjects\\CssColor', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'parseNumericValue', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert numerischen Wert und Einheit */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isImportant', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Property wichtig ist (!important) */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValueWithoutImportant', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt den Wert ohne !important zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssPropertyCategory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für CSS Property Kategorien */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COLOR', 'value' => '\'color\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SPACING', 'value' => '\'spacing\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TYPOGRAPHY', 'value' => '\'typography\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LAYOUT', 'value' => '\'layout\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BORDER', 'value' => '\'border\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ANIMATION', 'value' => '\'animation\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TRANSFORM', 'value' => '\'transform\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OTHER', 'value' => '\'other\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssRule.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssRule', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repräsentiert eine CSS-Regel mit Selektoren und Properties */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param CssSelector[] $selectors * @param CssProperty[] $properties */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'selectors', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'properties', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSelectorStrings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Selektor-Strings zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPropertyNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Property-Namen zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sucht eine Property nach Namen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Design\\ValueObjects\\CssProperty', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPropertiesByCategory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt alle Properties einer bestimmten Kategorie zurück * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'category', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssPropertyCategory', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasSelector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Regel einen bestimmten Selektor enthält */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'selectorValue', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Regel eine bestimmte Property enthält */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'propertyName', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'usesCustomProperties', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob die Regel Custom Properties verwendet */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCustomPropertyReferences', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert alle Custom Property Referenzen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCssString', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt die Regel als CSS-String zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSpecificityAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert die Spezifität der Selektoren */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'categorize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kategorisiert die Regel basierend auf Selektoren und Properties */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssSelector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repräsentiert einen CSS-Selektor */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'selector', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateSpecificity', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Berechnet die CSS-Spezifität des Selektors */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Analysiert den Selektor-Typ */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Design\\ValueObjects\\CssSelectorType', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractClasses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert alle CSS-Klassennamen aus dem Selektor * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractIds', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert alle IDs aus dem Selektor * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractElements', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extrahiert alle Element-Namen aus dem Selektor * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CssSelectorType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CssSelectorType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für CSS Selektor Typen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLASS_SELECTOR', 'value' => '\'class\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ID', 'value' => '\'id\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ELEMENT', 'value' => '\'element\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ATTRIBUTE', 'value' => '\'attribute\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PSEUDO', 'value' => '\'pseudo\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COMPLEX', 'value' => '\'complex\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/CustomProperty.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\CustomProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Repräsentiert eine CSS Custom Property (CSS Variable) */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromDeclaration', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'declaration', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasValueType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValueAs', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignSystemAnalysis.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\DesignSystemAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Complete Design System Analysis Result */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'colorAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'componentAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'conventionAnalysis', 'type' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaturityLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gets the overall design system maturity level */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getOverallDesignSystemScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculates overall design system score (0-100) */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCriticalIssues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gets critical issues that need immediate attention */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQuickWins', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gets quick wins for easy improvements */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDevelopmentRoadmap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gets development roadmap based on analysis */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exportReport', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exports analysis as array for JSON serialization */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( 'coloranalysisresult' => 'App\\Framework\\Design\\Analyzer\\ColorAnalysisResult', 'componentdetectionresult' => 'App\\Framework\\Design\\Analyzer\\ComponentDetectionResult', 'conventioncheckresult' => 'App\\Framework\\Design\\Analyzer\\ConventionCheckResult', 'tokenanalysisresult' => 'App\\Framework\\Design\\Analyzer\\TokenAnalysisResult', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignToken.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\DesignToken', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Design Token Value Object */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'color', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für Color Token */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'color', 'type' => 'App\\Framework\\Design\\ValueObjects\\CssColor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'spacing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für Spacing Token */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'string|int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'typography', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory für Typography Token */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'description', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Konvertiert zu Array für Export/Serialisierung * @return array */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCssCustomProperty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt CSS Custom Property String */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCssVar', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt CSS var() Referenz zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasValueType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Prüft ob Token einen bestimmten Wert-Typ hat */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getValueAs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Gibt Wert als bestimmten Typ zurück */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/DesignTokenType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\DesignTokenType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enum für Design Token Typen */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COLOR', 'value' => '\'color\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SPACING', 'value' => '\'spacing\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TYPOGRAPHY', 'value' => '\'typography\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHADOW', 'value' => '\'shadow\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RADIUS', 'value' => '\'radius\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OPACITY', 'value' => '\'opacity\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BORDER', 'value' => '\'border\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ANIMATION', 'value' => '\'animation\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BREAKPOINT', 'value' => '\'breakpoint\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Design/ValueObjects/TokenCategory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Design\\ValueObjects\\TokenCategory', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kategorien für Design Tokens */', 'namespace' => 'App\\Framework\\Design\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COLOR', 'value' => '\'color\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TYPOGRAPHY', 'value' => '\'typography\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SPACING', 'value' => '\'spacing\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BORDER', 'value' => '\'border\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SHADOW', 'value' => '\'shadow\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ANIMATION', 'value' => '\'animation\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'OTHER', 'value' => '\'other\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/DiscoveryCacheIdentifiers.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Centralized cache identifiers for discovery operations * Uses the framework\'s CacheIdentifier system for consistent caching */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cachetag' => 'App\\Framework\\Cache\\CacheTag', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'discoveryTag', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache tag for all discovery-related cache items */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cachetag' => 'App\\Framework\\Cache\\CacheTag', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\CacheTag', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'discoveryKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for discovery results based on paths, scan type, and execution context * @param string[] $paths */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cachetag' => 'App\\Framework\\Cache\\CacheTag', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fullDiscoveryKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for full discovery * @param string[] $paths */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cachetag' => 'App\\Framework\\Cache\\CacheTag', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementalDiscoveryKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create cache key for incremental discovery * @param string[] $paths */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'cachetag' => 'App\\Framework\\Cache\\CacheTag', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Cache/RegistryCacheManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Cache\\RegistryCacheManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Manages caching of individual registries to avoid serialization issues * Each registry type is cached separately for better performance and reliability */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'set', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache a DiscoveryRegistry by storing each sub-registry separately */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Retrieve a DiscoveryRegistry from cache by loading each sub-registry */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidate all cached registries for a key */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'flush', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all registry caches */', 'namespace' => 'App\\Framework\\Discovery\\Cache', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Commands/ClearDiscoveryCache.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Commands\\ClearDiscoveryCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Unified console commands for clearing discovery-related caches * * Consolidates functionality from both Discovery and Core cache clearing commands: * - discovery:clear-cache: Clear only Discovery service cache * - discovery:clear: Clear all discovery-related caches (Discovery + Routes + Legacy) * - routes:clear: Clear only routes cache */', 'namespace' => 'App\\Framework\\Discovery\\Commands', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'consolecommand' => 'App\\Framework\\Console\\ConsoleCommand', 'consoleinput' => 'App\\Framework\\Console\\ConsoleInput', 'consoleoutput' => 'App\\Framework\\Console\\ConsoleOutput', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoverycache' => 'App\\Framework\\Discovery\\DiscoveryCache', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handle', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'discovery:clear-cache\'', 'description' => '\'Clear Discovery cache\'', ), )), ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearAll', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'discovery:clear\'', 'description' => '\'Clear all discovery-related caches\'', ), )), ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearRoutes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'input', 'type' => 'App\\Framework\\Console\\ConsoleInput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'output', 'type' => 'App\\Framework\\Console\\ConsoleOutput', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedAttributeNode::__set_state(array( 'name' => 'App\\Framework\\Console\\ConsoleCommand', 'args' => array ( 'name' => '\'routes:clear\'', 'description' => '\'Clear routes cache\'', ), )), ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryPlugin.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryPlugin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Contract for discovery plugins that extend the discovery process */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the plugin name */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Initialize the plugin before discovery starts */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'finalize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Finalize the plugin after discovery completes */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVisitors', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the visitors this plugin provides * * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if the plugin is enabled for the given context */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Contract for discovery processors that handle the actual file processing */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process files and return discovery results * * @param DiscoveryContext $context * @param array $plugins * @return DiscoveryRegistry */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'plugins', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHealthStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get processor health status */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Contracts/DiscoveryVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base contract for all discovery visitors */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the visitor type identifier */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Visit a file for discovery */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Visit a class within a file */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldProcessFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this visitor should process the given file */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset visitor state */', 'namespace' => 'App\\Framework\\Discovery\\Contracts', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryDataCollector.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory-efficient collector for discovery data using the new registry system * Accumulates data directly into specialized registries to prevent memory bloat */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addAttributes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add attributes from a batch - streams directly to registry */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addInterfaceImplementations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add interface implementations from a batch - streams directly to registry */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'implementations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addRoutes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add routes from a batch - routes are now stored as Route attributes * @deprecated Routes are now stored as attributes in AttributeRegistry */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'routes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addTemplates', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add templates from a batch - streams directly to registry */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'templates', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addFromDiscoveryRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add data from a DiscoveryRegistry object (for batch processing) */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current attribute count for specific class (for debugging) */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalItemsCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get total collected items count */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory usage statistics */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create final DiscoveryRegistry object with all collected data (new preferred method) */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all collected data (for memory cleanup) */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Force optimization of all registries */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAttributeRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get direct access to registries for advanced usage */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'interfaceregistry' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'templateregistry' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getInterfaceRegistry', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTemplateRegistry', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/DiscoveryServiceBootstrapper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\DiscoveryServiceBootstrapper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bootstrapper für den Discovery-Service * Ersetzt die alte AttributeDiscoveryService-Integration */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'appconfig' => 'App\\Framework\\Config\\AppConfig', 'discoveryconfig' => 'App\\Framework\\Config\\DiscoveryConfig', 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'discoveryservicefactory' => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'bootstrap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Bootstrapt den Discovery-Service und führt die Discovery durch */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'appconfig' => 'App\\Framework\\Config\\AppConfig', 'discoveryconfig' => 'App\\Framework\\Config\\DiscoveryConfig', 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'discoveryservicefactory' => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performBootstrap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt den Discovery-Prozess durch und verarbeitet die Ergebnisse */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'appconfig' => 'App\\Framework\\Config\\AppConfig', 'discoveryconfig' => 'App\\Framework\\Config\\DiscoveryConfig', 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'discoveryservicefactory' => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => '?App\\Framework\\Config\\DiscoveryConfig', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementalBootstrap', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt einen inkrementellen Discovery-Scan durch und verarbeitet die Ergebnisse * mit context-aware Initializer-Verarbeitung */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'appconfig' => 'App\\Framework\\Config\\AppConfig', 'discoveryconfig' => 'App\\Framework\\Config\\DiscoveryConfig', 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'discoveryservicefactory' => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isDiscoveryRequired', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Hilfsmethode um zu prüfen, ob Discovery erforderlich ist */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'appconfig' => 'App\\Framework\\Config\\AppConfig', 'discoveryconfig' => 'App\\Framework\\Config\\DiscoveryConfig', 'typedconfiguration' => 'App\\Framework\\Config\\TypedConfiguration', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'discoveryservicefactory' => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheCompressionEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache compression event * * Emitted when cache data is compressed to reduce memory usage. */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'originalSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressedSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionLevel', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionRatio', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemorySavings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory savings from compression */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEffectiveness', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compression effectiveness */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'wasBeneficial', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if compression was beneficial */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheEvictionEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\CacheEvictionEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache eviction event * * Emitted when cache items are evicted due to memory pressure * or other cache management policies. */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'itemsEvicted', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryFreed', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheLevel', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmergencyEviction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this was an emergency eviction */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEffectiveness', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get eviction effectiveness */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheHitEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when discovery results are loaded from cache * * Extended for memory-aware caching with data size and cache level tracking. */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'itemCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheAge', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataSize', 'type' => '?App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheLevel', 'type' => '?App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFresh', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isLargeCacheHit', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this is a large cache hit */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEfficiencyRating', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache efficiency rating */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/CacheMissEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache miss event * * Emitted when a cache lookup fails to find the requested data. */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheKey', 'type' => 'App\\Framework\\Cache\\CacheKey', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheLevel', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReasonCategory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get miss reason category */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPreventable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this miss could have been prevented */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkEventType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\ChunkEventType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Types of chunk processing events */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STARTED', 'value' => '\'started\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROGRESS', 'value' => '\'progress\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COMPLETED', 'value' => '\'completed\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FAILED', 'value' => '\'failed\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEMORY_ADJUSTED', 'value' => '\'memory_adjusted\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/ChunkProcessingEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when chunk processing starts, progresses, or completes */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventType', 'type' => 'App\\Framework\\Discovery\\Events\\ChunkEventType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkIndex', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalChunks', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processedFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkMemoryUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkComplexity', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingTime', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProgressPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getChunkProgressPercentage', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProcessingRate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?float', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryEfficiency', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryCompletedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when discovery process completes successfully */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filesScanned', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'duration', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metrics', 'type' => '?App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryFailedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when discovery process fails */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'exception', 'type' => 'Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'partialResults', 'type' => '?App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasPartialResults', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/DiscoveryStartedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when discovery process starts */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'estimatedFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directories', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/EventAggregator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\EventAggregator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event aggregator for Discovery memory and performance events * * Collects, aggregates, and analyzes events to provide insights * into Discovery operation patterns and performance characteristics. */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxEventsPerType', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleMemoryPressureEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle memory pressure events */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleMemoryCleanupEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle memory cleanup events */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleMemoryLeakEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle memory leak detection events */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleChunkProcessingEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle chunk processing events */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'handleStrategyChangeEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handle strategy change events */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'event', 'type' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryPressureAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get aggregated memory pressure analysis */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCleanupEffectivenessAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cleanup effectiveness analysis */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryLeakAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory leak trend analysis */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getChunkPerformanceAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get chunk processing performance analysis */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStrategyChangeAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get strategy change analysis */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveryAnalytics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive Discovery analytics */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all aggregated events (for testing or memory management) */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current statistics */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'clock' => 'App\\Framework\\DateTime\\Clock', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/FileProcessedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\FileProcessedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a file is successfully processed */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'SplFileInfo', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingTime', 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discoveredItems', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFilePath', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryCleanupEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when memory cleanup is performed */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'beforeUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'afterUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryFreed', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collectedCycles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'wasEmergency', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'triggerReason', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'wasEffective', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEffectivenessRatio', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCleanupType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryLeakDetectedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when a memory leak is detected during discovery */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'leakseverity' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detectedAt', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'growthRate', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'severity', 'type' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'windowSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresImmediateAction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEstimatedTimeToExhaustion', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?float', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'availableMemory', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedActions', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryPressureEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when memory pressure reaches warning or critical levels */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'status', 'type' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimit', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryPressure', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCritical', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWarning', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedAction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/MemoryStrategyChangedEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event fired when memory strategy is changed during discovery */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previousStrategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newStrategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'changeReason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'triggerMetrics', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmergencyChange', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isStrategyDowngrade', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getImpactDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Events/PerformanceAnalysisEvent.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Events\\PerformanceAnalysisEvent', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Event emitted when discovery performance analysis is completed * * Provides comprehensive performance metrics for telemetry and monitoring systems. */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'performancemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operationId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'metrics', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'bottlenecks', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recommendations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toTelemetryData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get telemetry data for monitoring systems */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'performancemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasPerformanceIssues', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this represents a performance issue */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'performancemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSeverityLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get severity level for alerting */', 'namespace' => 'App\\Framework\\Discovery\\Events', 'uses' => array ( 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'performancemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\PerformanceMetrics', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/DiscoveryException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Base exception for Discovery system operations * * Provides specialized error handling for discovery-related * operations with appropriate error codes and recovery hints. */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'memoryExhausted', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Discovery process failed due to memory constraints */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentMemory', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'scanFailed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Directory scanning failed */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cacheFailed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache operation failed */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fileProcessingFailed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * File processing failed */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'attributeReflectionFailed', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Attribute reflection failed */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeType', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'emergencyStop', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory guard emergency stop */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryStats', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'configurationInvalid', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configuration validation failed */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'field', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'timeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Discovery timeout */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actualSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'concurrentDiscovery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Concurrent discovery conflict */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'lockId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'corruptedData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Corrupted discovery data */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'source', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'insufficientPermissions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Insufficient permissions */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requiredPermission', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resourceLimitExceeded', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Resource limit exceeded */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'resource', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'current', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limit', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'dependencyMissing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Dependency missing */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'errorcode' => 'App\\Framework\\Exception\\ErrorCode', 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dependency', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'requiredFor', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Exceptions/RecoverableDiscoveryException.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Exception für wiederherstellbare Discovery-Fehler * Diese Fehler können durch Retry-Logik oder Backoff-Strategien behandelt werden */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => 'App\\Framework\\Exception\\FrameworkException', 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'message', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'retryAfterSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'tooManyOpenFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory-Methode für "Too many open files" Fehler */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'temporaryFilesystemError', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory-Methode für temporäre Dateisystem-Fehler */', 'namespace' => 'App\\Framework\\Discovery\\Exceptions', 'uses' => array ( 'exceptioncontext' => 'App\\Framework\\Exception\\ExceptionContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'previous', 'type' => '?Throwable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Factory/DiscoveryServiceFactory.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Factory\\DiscoveryServiceFactory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Factory for creating properly configured DiscoveryService instances * * Centralizes the complex dependency creation and configuration logic * that was previously scattered in constructors and bootstrappers. */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a fully configured DiscoveryService */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createForDevelopment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create DiscoveryService for development environment */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createForProduction', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create DiscoveryService for production environment */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createForTesting', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create DiscoveryService for testing environment */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createWithCustomConfig', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create DiscoveryService with custom configuration */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useCache', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lightweight', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a lightweight factory for specific use cases */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateDependencies', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate that all required services are available * @return string[] */', 'namespace' => 'App\\Framework\\Discovery\\Factory', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'commandhandlermapper' => 'App\\Framework\\CommandBus\\CommandHandlerMapper', 'consolecommandmapper' => 'App\\Framework\\Console\\ConsoleCommandMapper', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'eventhandlermapper' => 'App\\Framework\\Core\\Events\\EventHandlerMapper', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'routemapper' => 'App\\Framework\\Core\\RouteMapper', 'migration' => 'App\\Framework\\Database\\Migration\\Migration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'container' => 'App\\Framework\\DI\\Container', 'defaultcontainer' => 'App\\Framework\\DI\\DefaultContainer', 'initializermapper' => 'App\\Framework\\DI\\InitializerMapper', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'httpmiddleware' => 'App\\Framework\\Http\\HttpMiddleware', 'logger' => 'App\\Framework\\Logging\\Logger', 'mcpresourcemapper' => 'App\\Framework\\Mcp\\McpResourceMapper', 'mcptoolmapper' => 'App\\Framework\\Mcp\\McpToolMapper', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'queryhandlermapper' => 'App\\Framework\\QueryBus\\QueryHandlerMapper', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'domprocessor' => 'App\\Framework\\Template\\Processing\\DomProcessor', 'stringprocessor' => 'App\\Framework\\Template\\Processing\\StringProcessor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'config', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileContentVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\FileContentVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für Visitor, die Dateien direkt besuchen wollen */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird für jede gefundene Datei aufgerufen */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/FileVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\FileVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface für File-Visitor, die beim Scannen von Dateien verwendet werden */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanStart', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird aufgerufen, wenn der Scan beginnt */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird für jede gefundene Klasse aufgerufen */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanComplete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird aufgerufen, wenn der Scan abgeschlossen ist */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanStart', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird aufgerufen, wenn ein inkrementeller Scan beginnt */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanComplete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird aufgerufen, wenn ein inkrementeller Scan abgeschlossen ist */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadFromCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Lädt Daten aus dem Cache */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Liefert den Cache-Schlüssel für diesen Visitor */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheableData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Liefert die zu cachenden Daten des Visitors * * @return mixed Die zu cachenden Daten */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Health/DiscoveryHealthCheck.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Health\\DiscoveryHealthCheck', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Health check for the Discovery system * * Monitors discovery cache, memory management, and system performance * to ensure the discovery system is operating optimally. */', 'namespace' => 'App\\Framework\\Discovery\\Health', 'uses' => array ( 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'healthcheckcategory' => 'App\\Framework\\Health\\HealthCheckCategory', 'healthcheckinterface' => 'App\\Framework\\Health\\HealthCheckInterface', 'healthcheckresult' => 'App\\Framework\\Health\\HealthCheckResult', 'healthstatus' => 'App\\Framework\\Health\\HealthStatus', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Health\\HealthCheckInterface', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'discoveryService', 'type' => '?App\\Framework\\Discovery\\UnifiedDiscoveryService', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheManager', 'type' => '?App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryManager', 'type' => '?App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'check', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Health\\HealthCheckResult', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCategory', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Health\\HealthCheckCategory', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeout', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/InitializerProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\InitializerProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Processes and executes Initializers discovered by the Discovery system * * Handles context filtering, dependency graph construction, and lazy service registration. * Separated from DiscoveryServiceBootstrapper for Single Responsibility Principle. */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'contexttype' => 'App\\Framework\\Context\\ContextType', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'container' => 'App\\Framework\\DI\\Container', 'initializer' => 'App\\Framework\\DI\\Initializer', 'initializerdependencygraph' => 'App\\Framework\\DI\\InitializerDependencyGraph', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'container', 'type' => 'App\\Framework\\DI\\Container', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionContext', 'type' => 'App\\Framework\\Context\\ExecutionContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processInitializers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Intelligente Initializer-Verarbeitung mit Dependency-Graph: * - Context-Filter: Nur für passende Execution-Contexts * - void/null Return: Sofort ausführen (Setup) * - Konkreter Return-Type: Dependency-Graph basierte Registrierung */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'contexttype' => 'App\\Framework\\Context\\ContextType', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'container' => 'App\\Framework\\DI\\Container', 'initializer' => 'App\\Framework\\DI\\Initializer', 'initializerdependencygraph' => 'App\\Framework\\DI\\InitializerDependencyGraph', 'dependencygraphnode' => 'App\\Framework\\DI\\ValueObjects\\DependencyGraphNode', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'results', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/CacheableDiscoveryVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Interfaces\\CacheableDiscoveryVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for visitors that support caching * * Enables visitors to persist their discovery results to cache for improved * performance on subsequent runs. */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'loadFromCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Load previously cached discovery data * * This method is called at the beginning of discovery to restore * previously cached results, avoiding the need to re-scan unchanged files. * * @param Cache $cache The cache instance to load from */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheKey', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the cache key for this visitor\'s data * * The cache key should be unique to this visitor type and stable * across application restarts. * * @return CacheKey The cache key to use for storing/retrieving data */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheableData', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get data that should be cached * * This method is called after discovery completes to get the data * that should be stored in cache for future use. * * @return mixed The data to cache (must be serializable) */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/ClassDiscoveryVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Interfaces\\ClassDiscoveryVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for visitors that discover items from PHP classes * * Used for discovering attributes, routes, or other class-based metadata. * Provides direct access to cached reflection objects for optimal performance. */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Visit a PHP class during discovery * * This method is called for each discovered class file with pre-built reflection data. * Visitors should extract relevant information from the class metadata, attributes, * methods, or properties using the provided reflection object. * * @param ClassName $className The fully qualified class name * @param FilePath $filePath The path to the file containing the class * @param WrappedReflectionClass $reflection Cached reflection object for the class */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflection', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/DiscoveryVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Interfaces\\DiscoveryVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Core interface for all discovery visitors * * Defines the essential methods that every discovery visitor must implement * to provide consistent access to discovery results. */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveryType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the type of items this visitor discovers * * @return string The type identifier (e.g., \'attributes\', \'routes\', \'templates\') */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the results of the discovery process * * @return array The discovered items in a standardized format */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this visitor has discovered any items */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getResultCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the count of discovered items */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all discovered items (for fresh scans) */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/FileDiscoveryVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Interfaces\\FileDiscoveryVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for visitors that discover items from files * * Used for discovering templates, configuration files, or other file-based resources * that don\'t require class-level analysis. */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Visit a file during discovery * * This method is called for files that match the visitor\'s criteria. * Visitors should examine the file path, name, or contents to extract * relevant information. * * @param FilePath $filePath The path to the file being visited */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Interfaces/LifecycleAwareVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Interfaces\\LifecycleAwareVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for visitors that need lifecycle management * * Provides hooks for different phases of the discovery process, * allowing visitors to optimize their behavior for full vs incremental scans. */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanStart', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Called when a full discovery scan starts * * Use this to initialize data structures and reset state */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onScanComplete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Called when a full discovery scan completes * * Use this for post-processing, optimization, or cleanup */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanStart', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Called when an incremental scan starts * * Use this to prepare for partial updates while preserving existing data */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'onIncrementalScanComplete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Called when an incremental scan completes * * Use this for incremental post-processing or index updates */', 'namespace' => 'App\\Framework\\Discovery\\Interfaces', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/BatchParameters.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\BatchParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch processing parameters */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'estimatedMemoryPerBatch', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/DiscoveryMemoryManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Centralized memory management for Discovery operations * * Provides intelligent memory monitoring, adaptive chunking, and leak detection * to ensure stable and efficient discovery processing regardless of codebase size. */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimit', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryPressureThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => '?App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => '?App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createWithSuggestion', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create memory manager with auto-suggested strategy */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimit', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'estimatedFileCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => '?App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current memory status and emit events if needed */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateOptimalChunkSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate optimal chunk size based on current memory pressure */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalItems', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldCleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if memory cleanup is needed */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processedItems', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performCleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Perform memory cleanup and emit cleanup event */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\MemoryCleanupResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'isEmergency', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'triggerReason', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkForMemoryLeaks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check for potential memory leaks and emit leak event if detected */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\Memory\\MemoryLeakInfo', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryHistory', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createMemoryGuard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory guard for continuous monitoring */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emergencyCallback', 'type' => '?callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'calculateBatchParameters', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate adaptive batch parameters for streaming operations */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\BatchParameters', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalItems', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'itemSizeEstimate', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStrategyDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get strategy description for debugging */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'changeStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Change memory strategy and emit strategy changed event */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'newStrategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'changeReason', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'triggerMetrics', 'type' => '?array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurrentStrategy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current memory strategy */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memorycleanupevent' => 'App\\Framework\\Discovery\\Events\\MemoryCleanupEvent', 'memoryleakdetectedevent' => 'App\\Framework\\Discovery\\Events\\MemoryLeakDetectedEvent', 'memorypressureevent' => 'App\\Framework\\Discovery\\Events\\MemoryPressureEvent', 'memorystrategychangedevent' => 'App\\Framework\\Discovery\\Events\\MemoryStrategyChangedEvent', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardAction.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\GuardAction', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Guard actions that can be taken */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WARNING_ISSUED', 'value' => '\'warning_issued\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'EMERGENCY_CLEANUP', 'value' => '\'emergency_cleanup\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEANUP_SUGGESTED', 'value' => '\'cleanup_suggested\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEANUP_SUCCESSFUL', 'value' => '\'cleanup_successful\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CLEANUP_FAILED', 'value' => '\'cleanup_failed\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL_LEAK_DETECTED', 'value' => '\'critical_leak_detected\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH_LEAK_DETECTED', 'value' => '\'high_leak_detected\'', 'phpDoc' => NULL, )), 7 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM_LEAK_DETECTED', 'value' => '\'medium_leak_detected\'', 'phpDoc' => NULL, )), 8 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW_LEAK_DETECTED', 'value' => '\'low_leak_detected\'', 'phpDoc' => NULL, )), 9 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'EMERGENCY_MODE_RESET', 'value' => '\'emergency_mode_reset\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\GuardResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Result of a guard check */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryStatus', 'type' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'actions', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'checkNumber', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emergencyMode', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasAction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'action', 'type' => 'App\\Framework\\Discovery\\Memory\\GuardAction', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasAnyLeakDetection', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresImmediateAction', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/GuardStatistics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\GuardStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Guard statistics */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalChecks', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentStatus', 'type' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'peakUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'historySize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emergencyMode', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/LeakSeverity.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory leak severity levels */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryCleanupResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\MemoryCleanupResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory cleanup result */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'beforeUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'afterUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryFreed', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collectedCycles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'wasEffective', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryGuard.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory guard for continuous memory monitoring during discovery operations * * Provides real-time memory monitoring with automatic emergency handling * to prevent out-of-memory conditions during long-running operations. */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryManager', 'type' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'emergencyCallback', 'type' => '?callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'check', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check memory status and take action if needed */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\GuardResult', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forceEmergencyCleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Force emergency cleanup */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\MemoryCleanupResult', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get current memory statistics */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Memory\\GuardStatistics', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset guard state */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSafeToProcess', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if it\'s safe to continue processing */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommendations for current memory state * @return string[] */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryLeakInfo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\MemoryLeakInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory leak detection information */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'detectedAt', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'growthRate', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'windowSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'severity', 'type' => 'App\\Framework\\Discovery\\Memory\\LeakSeverity', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatus.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory status enumeration */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NORMAL', 'value' => '\'normal\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WARNING', 'value' => '\'warning\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CRITICAL', 'value' => '\'critical\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Memory/MemoryStatusInfo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory status information */', 'namespace' => 'App\\Framework\\Discovery\\Memory', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'status', 'type' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'currentUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'peakUsage', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimit', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'availableMemory', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryPressure', 'type' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'strategy', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/MemoryGuard.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\MemoryGuard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Advanced memory leak prevention and detection system */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => 'App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'checkpoint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a memory checkpoint before an operation */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate memory usage after an operation * @return bool True if memory usage is acceptable, false if potential leak detected */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'protect', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute a callback with memory protection * @template T * @param callable(): T $callback * @return T */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processWithMemoryGuard', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process data in chunks with memory protection * @template T * @param array $items * @param callable(T): void $processor */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'items', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processor', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunkSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forceCleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Force garbage collection and cleanup */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'aggressiveCleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aggressive memory cleanup for critical situations */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMemoryPressureHigh', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if memory pressure is high */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDetectedLeaks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get detected memory leaks * @return array */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearLeakHistory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear detected leaks history */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory guard statistics */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'percentage' => 'App\\Framework\\Core\\ValueObjects\\Percentage', 'clock' => 'App\\Framework\\DateTime\\Clock', 'memoryleakinfo' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/AttributeDiscoveryPlugin.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Plugins\\AttributeDiscoveryPlugin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plugin for discovering PHP attributes */', 'namespace' => 'App\\Framework\\Discovery\\Plugins', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'discoveryplugin' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryPlugin', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'attributevisitor' => 'App\\Framework\\Discovery\\Visitors\\AttributeVisitor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\Contracts\\DiscoveryPlugin', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initialize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'finalize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVisitors', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Plugins/RouteDiscoveryPlugin.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Plugins\\RouteDiscoveryPlugin', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Plugin for discovering routes */', 'namespace' => 'App\\Framework\\Discovery\\Plugins', 'uses' => array ( 'discoveryplugin' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryPlugin', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'routevisitor' => 'App\\Framework\\Discovery\\Visitors\\RouteVisitor', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\Contracts\\DiscoveryPlugin', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getName', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'initialize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'finalize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getVisitors', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEnabled', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/AdaptiveChunker.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Adaptive chunking system for Discovery operations * * Intelligently partitions files into processing chunks based on: * - Current memory pressure * - File sizes and complexity * - Memory strategy configuration * - Historical performance data */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'chunkeventtype' => 'App\\Framework\\Discovery\\Events\\ChunkEventType', 'chunkprocessingevent' => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 'batchparameters' => 'App\\Framework\\Discovery\\Memory\\BatchParameters', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'guardresult' => 'App\\Framework\\Discovery\\Memory\\GuardResult', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'file' => 'App\\Framework\\Filesystem\\File', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryManager', 'type' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryGuard', 'type' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => '?App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createChunks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create processing chunks from file list with adaptive sizing */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'chunkeventtype' => 'App\\Framework\\Discovery\\Events\\ChunkEventType', 'chunkprocessingevent' => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 'batchparameters' => 'App\\Framework\\Discovery\\Memory\\BatchParameters', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'guardresult' => 'App\\Framework\\Discovery\\Memory\\GuardResult', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'file' => 'App\\Framework\\Filesystem\\File', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Processing\\ChunkCollection', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'files', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processChunks', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process chunks with adaptive monitoring and adjustment */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'chunkeventtype' => 'App\\Framework\\Discovery\\Events\\ChunkEventType', 'chunkprocessingevent' => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 'batchparameters' => 'App\\Framework\\Discovery\\Memory\\BatchParameters', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'guardresult' => 'App\\Framework\\Discovery\\Memory\\GuardResult', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'file' => 'App\\Framework\\Filesystem\\File', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunks', 'type' => 'App\\Framework\\Discovery\\Processing\\ChunkCollection', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processor', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'progressCallback', 'type' => '?callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance statistics */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'chunkeventtype' => 'App\\Framework\\Discovery\\Events\\ChunkEventType', 'chunkprocessingevent' => 'App\\Framework\\Discovery\\Events\\ChunkProcessingEvent', 'batchparameters' => 'App\\Framework\\Discovery\\Memory\\BatchParameters', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'guardresult' => 'App\\Framework\\Discovery\\Memory\\GuardResult', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'file' => 'App\\Framework\\Filesystem\\File', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ChunkCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\ChunkCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Collection of processing chunks */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'chunks', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getChunks', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalFileCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalSize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ClassExtractor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Modern class extractor using the tokenizer module * More accurate than regex-based extraction */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystemService', 'type' => 'App\\Framework\\Filesystem\\FileSystemService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'tokenizer', 'type' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract class names from a file using tokenizer * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractDetailedFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract detailed class information with metadata * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractFunctionsFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract functions and methods from file * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractAttributesFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract attributes from file * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractUseStatementsFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract use statements from file * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'likelyContainsClasses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if file likely contains PHP classes (quick check) */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'analyzeFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract complete file analysis */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'discoverytokenizer' => 'App\\Framework\\Tokenizer\\Discovery\\DiscoveryTokenizer', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileAnalysis.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\FileAnalysis', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * File analysis result */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageFileSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'medianFileSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxFileSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'averageComplexity', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSizes', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\FileProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Processes files for discovery using a stream-based approach */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'discoveryprocessor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryProcessor', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'discoverydatacollector' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'logger' => 'App\\Framework\\Logging\\Logger', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'generator' => 'Generator', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\Contracts\\DiscoveryProcessor', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanner', 'type' => 'App\\Framework\\Filesystem\\FileScanner', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystemService', 'type' => 'App\\Framework\\Filesystem\\FileSystemService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => '?App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'process', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'plugins', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHealthStatus', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/FileStreamProcessor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handles streaming file processing for discovery * * Extracted from UnifiedDiscoveryService to separate concerns */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'discoverydatacollector' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'logger' => 'App\\Framework\\Logging\\Logger', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanner', 'type' => 'App\\Framework\\Filesystem\\FileScanner', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classExtractor', 'type' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingContext', 'type' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processDirectories', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process files from given directories into a collector */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'discoverydatacollector' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'logger' => 'App\\Framework\\Logging\\Logger', 'generator' => 'Generator', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directories', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileProcessor', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/LegacyClassExtractor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extracts class information from PHP files efficiently */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystemService', 'type' => 'App\\Framework\\Filesystem\\FileSystemService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'extractFromFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Extract class names from a file * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'likelyContainsClasses', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Quick check if content likely contains PHP classes */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingChunk.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\ProcessingChunk', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Processing chunk with metadata */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'file' => 'App\\Framework\\Filesystem\\File', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'files', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'complexity', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'files', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFiles', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFileCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalSize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getComplexity', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Shared context for processing files during discovery * * This context holds reflection instances and other shared data * to avoid duplicate work between visitors */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'setCurrentFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Set the current file being processed */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileContext', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getReflection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get reflection for a class (cached within the same file) */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Reflection\\WrappedReflectionClass', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCurrentFileContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the current file context */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\FileContext', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanup', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clean up resources for the current file */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'maybeCollectGarbage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Force garbage collection if needed */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processedFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCaches', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all caches for memory management */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/ProcessingResult.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\ProcessingResult', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Processing result with statistics */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processedFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalFiles', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processedChunks', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalChunks', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingTime', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryUsed', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'results', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isComplete', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getSuccessRate', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Processing/VisitorCoordinator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Coordinates visitor execution with shared reflection context * * This replaces the duplicate visitor logic in UnifiedDiscoveryService */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'discoverydatacollector' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'attributetarget' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'file' => 'App\\Framework\\Filesystem\\File', 'method' => 'App\\Framework\\Http\\Method', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'processingContext', 'type' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'processFile', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Process a file with all discovery logic */', 'namespace' => 'App\\Framework\\Discovery\\Processing', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'discoverydatacollector' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'attributetarget' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'file' => 'App\\Framework\\Filesystem\\File', 'method' => 'App\\Framework\\Http\\Method', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileContext', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'collector', 'type' => 'App\\Framework\\Discovery\\DiscoveryDataCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Quality/DiscoveryQualityValidator.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityValidator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Quality assurance validator for Discovery system * * Provides comprehensive quality checks including performance * validation, memory efficiency analysis, cache effectiveness, * and overall system health assessment. */', 'namespace' => 'App\\Framework\\Discovery\\Quality', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateQuality', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Perform comprehensive quality validation */', 'namespace' => 'App\\Framework\\Discovery\\Quality', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Quality\\DiscoveryQualityReport', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => '?App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateCriteria', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate specific quality criteria */', 'namespace' => 'App\\Framework\\Discovery\\Quality', 'uses' => array ( 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'criteria', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ReflectionAwareVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ReflectionAwareVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Interface for visitors that need access to cached reflection data * This optimizes performance by avoiding duplicate reflection creation */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'extends' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClassWithReflection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Wird für jede gefundene Klasse mit bereits erstellter Reflection aufgerufen * Uses the framework\'s cached reflection system for optimal performance */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflection', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryResilienceHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Resilience\\DiscoveryResilienceHandler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handles resilience patterns for Discovery operations * * Implements retry logic, circuit breaker patterns, and graceful * degradation to ensure Discovery system reliability under various * failure conditions. */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'recoverablediscoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxRetries', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'baseBackoffMs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxBackoffMs', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreakerThreshold', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'circuitBreakerTimeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeWithResilience', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute discovery operation with resilience patterns */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'recoverablediscoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get resilience statistics */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'recoverablediscoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetCircuitBreaker', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset circuit breaker */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'recoverablediscoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetAllCircuitBreakers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset all circuit breakers */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'recoverablediscoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\RecoverableDiscoveryException', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'frameworkexception' => 'App\\Framework\\Exception\\FrameworkException', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Resilience/DiscoveryTimeoutHandler.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Resilience\\DiscoveryTimeoutHandler', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Handles timeout management for Discovery operations * * Prevents long-running discovery operations from hanging * the system by implementing configurable timeouts with * proper cleanup and resource management. */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'defaultTimeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryTimeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileTimeoutSeconds', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxOperationsPerContext', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'executeWithTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Execute operation with timeout protection */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'mixed', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'customTimeoutSeconds', 'type' => '?int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getActiveOperations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get active operations status */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanupOverdueOperations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Kill overdue operations (cleanup) */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timeout statistics */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forceTimeout', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Force timeout for specific operation */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operationId', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTimeoutRecommendations', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get timeout recommendations for a context */', 'namespace' => 'App\\Framework\\Discovery\\Resilience', 'uses' => array ( 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryexception' => 'App\\Framework\\Discovery\\Exceptions\\DiscoveryException', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/AttributeRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory-optimized registry for attribute discoveries using Value Objects * Pure Value Object implementation without legacy array support */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for cache serialization */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create AttributeRegistry from array data (for cache deserialization) * Always loads as non-optimized to ensure data integrity */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a value object mapping */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attribute', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get discovered attributes as Value Objects * @return DiscoveredAttribute[] */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count total mappings across all attribute types (Countable interface) */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllTypes', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find attributes by class name * @return DiscoveredAttribute[] */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalMemoryFootprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get total memory footprint */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/DiscoveryRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Central registry that coordinates the smaller specialized registries * This replaces the monolithic DiscoveryResults with a composition of lightweight registries * * MEMORY OPTIMIZATION: Implements __serialize/__unserialize to prevent cache memory explosion */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributes', 'type' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interfaces', 'type' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'templates', 'type' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Optimize all registries for memory efficiency */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCaches', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all caches to free memory */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive memory statistics */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createLightweight', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a lightweight version with only essential data */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'empty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for cache serialization */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__serialize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__unserialize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Custom deserialization using fromArray() method */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create DiscoveryRegistry from array data (for cache deserialization) * Uses direct constructor instantiation with data injection */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Merge multiple registries efficiently */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFileCount', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'attributes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the attributes registry */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/InterfaceRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Results\\InterfaceRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory-optimized registry for interface implementations using Value Objects * Pure Value Object implementation without legacy array support */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for cache serialization */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create InterfaceRegistry from array data (for cache deserialization) * Always loads as non-optimized to ensure data integrity */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get implementations as ClassName Value Objects * @return ClassName[] */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllMappings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all mappings as Value Objects * @return InterfaceMapping[] */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'mapping', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count total interface mappings (Countable interface) */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAllInterfaces', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clear', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findMappingsForInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find all mappings for a specific interface * @return InterfaceMapping[] */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTotalMemoryFootprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get total memory footprint */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'interfacemapping' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Results/TemplateRegistry.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Results\\TemplateRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory-optimized registry for template discoveries using Value Objects * Pure Value Object implementation without legacy array support */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for cache serialization * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create TemplateRegistry from array data (for cache deserialization) * Always loads as non-optimized to ensure data integrity */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all templates as Value Objects * @return TemplateMapping[] */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'has', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'template', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Count total templates (Countable interface) */', 'namespace' => 'App\\Framework\\Discovery\\Results', 'uses' => array ( 'templatemapping' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'countable' => 'Countable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'optimize', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStats', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'merge', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryCacheManager.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enhanced Discovery cache manager with memory-aware and tiered caching strategies * * Combines traditional discovery caching with: * - Memory-aware compression and eviction * - Tiered caching for different access patterns * - Automatic cache level adjustment based on memory pressure * - Comprehensive cache metrics and monitoring */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystemService', 'type' => 'App\\Framework\\Filesystem\\FileSystemService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'ttlHours', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryManager', 'type' => '?App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'evictionThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cached discovery results with memory-aware retrieval */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'store', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Store discovery results with memory-aware and tiered caching */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'invalidate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Invalidate cache for a context */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'clearAll', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clear all discovery caches */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHealthStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get enhanced cache health status with memory awareness * * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get comprehensive cache metrics */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'performMemoryPressureManagement', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Perform memory pressure management * * @return array */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'cacheitem' => 'App\\Framework\\Cache\\CacheItem', 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachecompressionevent' => 'App\\Framework\\Discovery\\Events\\CacheCompressionEvent', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'cachemissevent' => 'App\\Framework\\Discovery\\Events\\CacheMissEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memorystatus' => 'App\\Framework\\Discovery\\Memory\\MemoryStatus', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'cachelevel' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'cachemetrics' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'cachetier' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'compressionlevel' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'logger' => 'App\\Framework\\Logging\\Logger', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/DiscoveryStorage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedInterfaceNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Storage\\DiscoveryStorage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Spezialisiertes Storage-Interface für Discovery-Operationen * Erweitert das Standard-Storage-Interface mit Discovery-spezifischen Methoden */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'extends' => array ( 0 => 'App\\Framework\\Filesystem\\Storage', ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findChangedFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet geänderte Dateien seit dem letzten Scan * * @param string $directory Zu durchsuchendes Verzeichnis * @param array $fileMetadata Vorhandene Metadaten [path => metadata] * @return array Liste geänderter Dateien */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileMetadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementalScan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Führt einen inkrementellen Scan durch * * @param string $directory Zu durchsuchendes Verzeichnis * @param array $fileMetadata Vorhandene Metadaten [path => metadata] * @return array Aktualisierte Metadaten [path => metadata] */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileMetadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Findet alle Dateien mit einem bestimmten Muster * * @param string $directory Zu durchsuchendes Verzeichnis * @param string $pattern Suchmuster (z.B. \'*.php\') * @return array Liste gefundener Dateien */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveryMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Metadaten für eine Datei * * @param string $filePath Pfad zur Datei * @param bool $calculateChecksum Ob eine Prüfsumme berechnet werden soll * @return FileMetadata Metadaten der Datei */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Filesystem\\FileMetadata', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'calculateChecksum', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveryMetadataMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Erstellt Metadaten für mehrere Dateien parallel * * @param array $filePaths Liste von Dateipfaden * @param bool $calculateChecksum Ob Prüfsummen berechnet werden sollen * @return array Metadaten [path => metadata] */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePaths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'calculateChecksum', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerFileSystemEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Registriert Dateisystem-Events für Änderungserkennung * * @param string $directory Zu überwachendes Verzeichnis * @param callable $callback Callback-Funktion für Events (string $path, string $event) * @return bool Erfolg der Registrierung */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Storage/FileSystemDiscoveryStorage.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Storage\\FileSystemDiscoveryStorage', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Implementierung des DiscoveryStorage-Interfaces, die das Filesystem-Modul nutzt * und die Discovery-spezifischen Methoden implementiert. * * Diese Klasse verwendet Composition, um die Funktionalität des Storage-Interfaces * zu delegieren und erweitert sie um Discovery-spezifische Funktionen. */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\Storage\\DiscoveryStorage', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'permissions', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Filesystem\\PermissionChecker', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'fiberManager', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Async\\FiberManager', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param Storage $storage Basis-Storage-Implementierung für Delegation * @param PermissionChecker $permissions Permissions-Checker * @param FiberManager $fiberManager Fiber-Manager für asynchrone Operationen */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'storage', 'type' => 'App\\Framework\\Filesystem\\Storage', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'permissions', 'type' => '?App\\Framework\\Filesystem\\PermissionChecker', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fiberManager', 'type' => '?App\\Framework\\Async\\FiberManager', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'get', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'put', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'content', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'exists', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'delete', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'copy', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'source', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'destination', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'size', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'lastModified', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMimeType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isReadable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isWritable', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'listDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'permissions', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'recursive', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'file', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Filesystem\\File', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'directory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Filesystem\\Directory', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'batch', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'putMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'files', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetadataMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findChangedFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileMetadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementalScan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileMetadata', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findFiles', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveryMetadata', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Filesystem\\FileMetadata', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'calculateChecksum', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDiscoveryMetadataMultiple', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePaths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'calculateChecksum', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 26 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'registerFileSystemEvents', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * {@inheritdoc} */', 'namespace' => 'App\\Framework\\Discovery\\Storage', 'uses' => array ( 'fibermanager' => 'App\\Framework\\Async\\FiberManager', 'directory' => 'App\\Framework\\Filesystem\\Directory', 'file' => 'App\\Framework\\Filesystem\\File', 'filemetadata' => 'App\\Framework\\Filesystem\\FileMetadata', 'permissionchecker' => 'App\\Framework\\Filesystem\\PermissionChecker', 'storage' => 'App\\Framework\\Filesystem\\Storage', 'splfileinfo' => 'SplFileInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'callback', 'type' => 'callable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Testing/DiscoveryTestHelper.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Testing\\DiscoveryTestHelper', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Testing utilities for Discovery system * * Provides helper methods for testing Discovery components * with mock data, performance validation, and quality checks. */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createTestDiscoveryService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create test discovery service with mocked dependencies * @param array $options */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createTestConfiguration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create test discovery configuration * @param array $overrides */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overrides', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createTestContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create test discovery context */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createTestOptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create test discovery options */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'overrides', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createTestFileStructure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create test directory structure with PHP files */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'structure', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'cleanupTestFileStructure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Clean up test directory structure */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'basePath', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validateDiscoveryResults', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate discovery results */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'registry', 'type' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'expectations', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'benchmarkDiscovery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Benchmark discovery performance */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'iterations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testMemoryBehavior', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Test memory behavior under pressure */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testConcurrentDiscovery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Test concurrent discovery operations */', 'namespace' => 'App\\Framework\\Discovery\\Testing', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'unifieddiscoveryservice' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'logger' => 'App\\Framework\\Logging\\Logger', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'service', 'type' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'concurrentOperations', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/UnifiedDiscoveryService.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\UnifiedDiscoveryService', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Refactored unified discovery service with clean architecture * * Key improvements: * - Separated concerns into focused components * - Shared reflection context to avoid duplication * - Stream-based processing for memory efficiency * - Plugin-based architecture for extensibility */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pathProvider', 'type' => 'App\\Framework\\Core\\PathProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cache', 'type' => 'App\\Framework\\Cache\\Cache', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => 'App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'configuration', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'logger', 'type' => '?App\\Framework\\Logging\\Logger', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'eventDispatcher', 'type' => '?App\\Framework\\Core\\Events\\EventDispatcher', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryMonitor', 'type' => '?App\\Framework\\Performance\\MemoryMonitor', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'fileSystemService', 'type' => '?App\\Framework\\Filesystem\\FileSystemService', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'performanceCollector', 'type' => '?App\\Framework\\Performance\\EnhancedPerformanceCollector', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionContext', 'type' => '?App\\Framework\\Context\\ExecutionContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'discover', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Modern unified discovery with enhanced features */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementalDiscover', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Incremental discovery for changed directories */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'discoverWithOptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Discovery with custom options */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'updateDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Update cache for specific directory (for incremental updates) */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHealthStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get health status of all components including memory management * @return array */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryStatistics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory management statistics * @return array */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldRescan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if rescan is needed */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProcessedFileCount', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get processed file count from last discovery */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'test', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Test discovery system functionality for health checks * @return array */', 'namespace' => 'App\\Framework\\Discovery', 'uses' => array ( 'cache' => 'App\\Framework\\Cache\\Cache', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'eventdispatcher' => 'App\\Framework\\Core\\Events\\EventDispatcher', 'pathprovider' => 'App\\Framework\\Core\\PathProvider', 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'cachehitevent' => 'App\\Framework\\Discovery\\Events\\CacheHitEvent', 'discoverycompletedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryCompletedEvent', 'discoveryfailedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryFailedEvent', 'discoverystartedevent' => 'App\\Framework\\Discovery\\Events\\DiscoveryStartedEvent', 'discoverymemorymanager' => 'App\\Framework\\Discovery\\Memory\\DiscoveryMemoryManager', 'memoryguard' => 'App\\Framework\\Discovery\\Memory\\MemoryGuard', 'adaptivechunker' => 'App\\Framework\\Discovery\\Processing\\AdaptiveChunker', 'classextractor' => 'App\\Framework\\Discovery\\Processing\\ClassExtractor', 'filestreamprocessor' => 'App\\Framework\\Discovery\\Processing\\FileStreamProcessor', 'processingcontext' => 'App\\Framework\\Discovery\\Processing\\ProcessingContext', 'visitorcoordinator' => 'App\\Framework\\Discovery\\Processing\\VisitorCoordinator', 'discoveryregistry' => 'App\\Framework\\Discovery\\Results\\DiscoveryRegistry', 'discoverycachemanager' => 'App\\Framework\\Discovery\\Storage\\DiscoveryCacheManager', 'discoveryconfiguration' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'discoverycontext' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'discoveryoptions' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'memorystrategy' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scantype' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'filescanner' => 'App\\Framework\\Filesystem\\FileScanner', 'filesystemservice' => 'App\\Framework\\Filesystem\\FileSystemService', 'filepattern' => 'App\\Framework\\Filesystem\\ValueObjects\\FilePattern', 'scannermemoryusage' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMemoryUsage', 'scannermetrics' => 'App\\Framework\\Filesystem\\ValueObjects\\ScannerMetrics', 'logger' => 'App\\Framework\\Logging\\Logger', 'enhancedperformancecollector' => 'App\\Framework\\Performance\\EnhancedPerformanceCollector', 'memorymonitor' => 'App\\Framework\\Performance\\MemoryMonitor', 'performancecategory' => 'App\\Framework\\Performance\\PerformanceCategory', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Type-safe collection of discovered attributes */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'IteratorAggregate', 1 => 'Countable', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributes', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attribute', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return ArrayIterator */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'ArrayIterator', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByAttributeClass', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter by attribute class */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByTarget', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter by target type */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'target', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassAttributes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all class attributes */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMethodAttributes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all method attributes */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toLegacyArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for backwards compatibility * @deprecated Use object methods instead * @return array>> */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/AttributeTarget.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'scalarType' => 'string', 'phpDoc' => NULL, 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'TARGET_CLASS', 'value' => '\'class\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'METHOD', 'value' => '\'method\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PROPERTY', 'value' => '\'property\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PARAMETER', 'value' => '\'parameter\'', 'phpDoc' => NULL, )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache level enumeration for memory-aware caching * * Defines different cache retention and compression strategies * based on memory pressure conditions. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MINIMAL', 'value' => '\'minimal\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'REDUCED', 'value' => '\'reduced\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COMPRESSED', 'value' => '\'compressed\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NORMAL', 'value' => '\'normal\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'EXTENDED', 'value' => '\'extended\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRetentionMultiplier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache retention multiplier for this level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresCompression', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compression requirement for this level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefaultCompressionLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get default compression level for this cache level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get description of this cache level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMoreAggressiveThan', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this level is more aggressive than another */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromMemoryPressure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Suggest cache level based on memory pressure */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pressure', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheMetrics.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\CacheMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache metrics value object for memory-aware cache monitoring * * Provides comprehensive cache performance and memory usage metrics * to support intelligent cache management decisions. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryStatus', 'type' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheLevel', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalItems', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'hitRate', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'totalSize', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'compressionRatio', 'type' => 'App\\Framework\\Core\\ValueObjects\\Score', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'evictionCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEfficiencyScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache efficiency score (combines hit rate with memory efficiency) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPerformingWell', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if cache is performing well */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryPressureImpact', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory pressure impact level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCompressionEffectiveness', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compression effectiveness */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedActions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended actions based on metrics */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for logging/debugging */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getEstimatedMemorySavings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Calculate estimated memory savings from compression */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHealthStatus', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cache health status */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getQualityScore', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get overall cache quality score */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'score' => 'App\\Framework\\Core\\ValueObjects\\Score', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'memorystatusinfo' => 'App\\Framework\\Discovery\\Memory\\MemoryStatusInfo', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Score', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CacheTier.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\CacheTier', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Cache tier enumeration for tiered caching strategy * * Defines different cache tiers with specific retention, compression, * and access characteristics optimized for different usage patterns. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HOT', 'value' => '\'hot\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'WARM', 'value' => '\'warm\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'COLD', 'value' => '\'cold\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ARCHIVE', 'value' => '\'archive\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCompressionLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get compression level for this tier */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getTtlMultiplier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get TTL multiplier for this tier */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExpectedAccessFrequency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get expected access frequency for this tier */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMaxItemSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get maximum item size for this tier */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get priority for this tier (higher = more important) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getHigherTier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get higher tier (for promotion) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?self', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getLowerTier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get lower tier (for demotion) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?self', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isRecommendedUnderMemoryPressure', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this tier should be used under memory pressure */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pressure', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get description of this tier */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toCacheLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to corresponding cache level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\ValueObjects\\CacheLevel', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Suggest tier based on data characteristics */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'accessFrequency', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryPressure', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'orderedByPriority', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all tiers ordered by priority (highest first) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryEfficientTiers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory-efficient tiers for cleanup */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/CompressionLevel.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\CompressionLevel', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Compression level enumeration for cache data compression * * Defines different compression strategies with trade-offs between * compression ratio and CPU usage. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'NONE', 'value' => '\'none\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'LOW', 'value' => '\'low\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEDIUM', 'value' => '\'medium\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'HIGH', 'value' => '\'high\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MAXIMUM', 'value' => '\'maximum\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getGzipLevel', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the gzip compression level integer */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExpectedRatio', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get expected compression ratio (approximate) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCpuCostMultiplier', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get CPU cost relative to no compression */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMinimumDataSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get minimum data size threshold for this compression level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isBeneficialFor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if compression is beneficial for given data size */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get description of this compression level */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggest', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Suggest compression level based on data size and memory pressure */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'dataSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryPressure', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveredAttribute.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Represents a discovered attribute with all its metadata */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $arguments * @param array $additionalData */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeClass', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'target', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'methodName', 'type' => '?App\\Framework\\Core\\ValueObjects\\MethodName', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'propertyName', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'arguments', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => '?App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'additionalData', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isClassAttribute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isMethodAttribute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isPropertyAttribute', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from legacy array format (for cache compatibility) * @param array $data */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUniqueId', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unique identifier for deduplication */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'createAttributeInstance', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create an instance of the attribute class with the stored arguments */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?object', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryFootprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory footprint estimate */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for backwards compatibility * @deprecated Use object properties instead */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'attribute' => 'Attribute', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryConfiguration.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryConfiguration', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configuration value object for Discovery service * * Encapsulates all discovery-related configuration in a single immutable object * to reduce constructor complexity and improve maintainability. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedPropertiesNode::__set_state(array( 'names' => array ( 0 => 'cacheTimeout', ), 'phpDoc' => NULL, 'type' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'public' => true, 'private' => false, 'static' => false, 'readonly' => true, 'abstract' => false, 'final' => false, 'publicSet' => false, 'protectedSet' => false, 'privateSet' => false, 'virtual' => false, 'attributes' => array ( ), 'hooks' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useCache', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'cacheTimeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'contextSuffix', 'type' => '?string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimitMB', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableEventDispatcher', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enableMemoryMonitoring', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enablePerformanceTracking', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'maxFilesPerBatch', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryPressureThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'development', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration for development environment */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'production', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration for production environment */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'testing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration for testing environment * * Testing configuration now uses similar settings to development * to ensure consistent discovery behavior, especially for CLI commands */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'forPaths', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration with specific paths (factory method) * @param array $paths */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMappers', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create configuration with specific mappers * @param array $attributeMappers * @param array $targetInterfaces */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'targetInterfaces', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withCache', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new configuration with modified cache settings */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useCache', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timeout', 'type' => '?App\\Framework\\Core\\ValueObjects\\Duration', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withMemorySettings', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new configuration with modified memory settings */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'limitMB', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pressureThreshold', 'type' => 'float', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withContextSuffix', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new configuration with modified context suffix */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'suffix', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withPaths', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create a new configuration with modified paths * @param array $paths */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'validate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Validate configuration settings */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryLimitBytes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory limit in bytes */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isFeatureEnabled', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if feature is enabled */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'feature', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for debugging/logging * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Context information for the discovery process */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'options', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startTime', 'type' => 'DateTimeImmutable', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'executionContext', 'type' => '?App\\Framework\\Context\\ExecutionContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'incrementProcessedFiles', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getProcessedFiles', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addMetric', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'key', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'value', 'type' => 'mixed', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMetrics', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'cachekey' => 'App\\Framework\\Cache\\CacheKey', 'executioncontext' => 'App\\Framework\\Context\\ExecutionContext', 'duration' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'clock' => 'App\\Framework\\DateTime\\Clock', 'discoverycacheidentifiers' => 'App\\Framework\\Discovery\\Cache\\DiscoveryCacheIdentifiers', 'datetimeimmutable' => 'DateTimeImmutable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDuration', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Duration', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'clock', 'type' => 'App\\Framework\\DateTime\\Clock', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCacheKey', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Cache\\CacheKey', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isIncremental', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldUseCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/DiscoveryOptions.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveryOptions', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configuration options for discovery process */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'useCache', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'parallel', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'batchSize', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'showProgress', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'excludePatterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'includePatterns', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'defaults', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withScanType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'scanType', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withPaths', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'paths', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withoutCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/FileContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Context information for file processing */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromFile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'withClassNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @param array $classNames */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'classNames', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getClassNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'hasClasses', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getNamespace', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getFullyQualifiedNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get all fully qualified class names * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'file' => 'App\\Framework\\Filesystem\\File', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/InterfaceMapping.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\InterfaceMapping', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Immutable value object for interface implementation mappings * Replaces simple arrays with memory-efficient typed structure */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'implementation', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'implementation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUniqueId', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unique identifier for deduplication */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameAs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this mapping is the same as another */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'implementsInterface', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this implements the given interface */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'interface', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryFootprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory footprint estimate */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryLeakInfo.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryLeakInfo', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Information about a detected memory leak */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'growthrate' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'timestamp' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'operation', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'startMemory', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'endMemory', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'growth', 'type' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'growthPercentage', 'type' => 'App\\Framework\\Core\\ValueObjects\\GrowthRate', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'timestamp', 'type' => 'App\\Framework\\Core\\ValueObjects\\Timestamp', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isCritical', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSignificant', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__toString', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/MemoryStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\MemoryStrategy', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Memory management strategies for Discovery operations * * Defines different approaches to memory management based on * system constraints and operation requirements. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'ADAPTIVE', 'value' => '\'adaptive\'', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Adaptive strategy - adjusts based on memory pressure * Monitors memory usage and adapts chunk sizes dynamically */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'CONSERVATIVE', 'value' => '\'conservative\'', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Conservative strategy - prioritizes memory conservation * Uses small chunks and frequent cleanup */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'AGGRESSIVE', 'value' => '\'aggressive\'', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Aggressive strategy - prioritizes speed over memory * Uses large chunks and minimal cleanup */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'STREAMING', 'value' => '\'streaming\'', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Streaming strategy - minimal memory footprint * Processes items one by one with immediate cleanup */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BATCH', 'value' => '\'batch\'', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Batch strategy - balanced approach * Fixed batch sizes with predictable memory usage */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDefaultChunkSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get default chunk size for this strategy */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryPressureThreshold', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory pressure threshold for this strategy */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'float', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getCleanupFrequency', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get cleanup frequency for this strategy */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'supportsDynamicAdjustment', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if strategy supports dynamic adjustment */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get strategy description for logging/debugging */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggestForSystem', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Suggest strategy based on system constraints */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'availableMemoryMB', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'itemCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'suggestForDiscovery', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Suggest strategy based on discovery configuration */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'estimatedFileCount', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'memoryLimitMB', 'type' => 'int', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'enablePerformanceTracking', 'type' => 'bool', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ReflectionContext.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\ReflectionContext', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Context information for reflection-based discovery */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'filePath', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflection', 'type' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanStrategy.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\ScanStrategy', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Configurable scan strategies for different use cases */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'DEPTH_FIRST', 'value' => '\'depth_first\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'BREADTH_FIRST', 'value' => '\'breadth_first\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PRIORITY_BASED', 'value' => '\'priority_based\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'MEMORY_OPTIMIZED', 'value' => '\'memory_optimized\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PERFORMANCE_OPTIMIZED', 'value' => '\'performance_optimized\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FIBER_PARALLEL', 'value' => '\'fiber_parallel\'', 'phpDoc' => NULL, )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRecommendedChunkSize', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get recommended chunk size for this strategy */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'useParallelProcessing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Should use parallel processing? */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'useFiberProcessing', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Should use Fiber-based parallel processing? */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPriorityDirectories', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get priority directories for PRIORITY_BASED strategy */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/ScanType.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\ScanType', 'scalarType' => 'string', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Type of discovery scan being performed */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( ), 'constUses' => array ( ), )), 'implements' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'FULL', 'value' => '\'full\'', 'phpDoc' => NULL, )), 1 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'INCREMENTAL', 'value' => '\'incremental\'', 'phpDoc' => NULL, )), 2 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'PARTIAL', 'value' => '\'partial\'', 'phpDoc' => NULL, )), 3 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'SELECTIVE', 'value' => '\'selective\'', 'phpDoc' => NULL, )), 4 => \PHPStan\Dependency\ExportedNode\ExportedEnumCaseNode::__set_state(array( 'name' => 'RECOVERY', 'value' => '\'recovery\'', 'phpDoc' => NULL, )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getDescription', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'requiresCache', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isQuick', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateCollection.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateCollection', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Immutable collection of TemplateMapping value objects * * Provides type-safe operations for template collections with filtering, * searching, and memory-efficient operations. */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'Countable', 1 => 'IteratorAggregate', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'templates', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'add', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add a template to the collection */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'template', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'addMany', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Add multiple templates to the collection */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'templates', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'byRef' => false, 'variadic' => true, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter templates by name pattern */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'namePattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter templates by type */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter templates by directory */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'directory', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'filterByExtension', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Filter templates by extension */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'extension', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findExact', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find template by exact name and type */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find template by name (any type) */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'findByPath', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Find template by file path */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'groupByType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get templates grouped by type * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 11 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'groupByDirectory', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get templates grouped by directory * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 12 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUniqueNames', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unique template names * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 13 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUniqueTypes', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unique template types * @return array */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 14 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUniqueDirectories', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unique directories */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 15 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'deduplicate', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Remove duplicate templates based on unique identifier */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 16 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sortedByName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sort templates by name */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 17 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'sortedByTypeAndName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Sort templates by type, then by name */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'self', 'parameters' => array ( ), 'attributes' => array ( ), )), 18 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isEmpty', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if collection is empty */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( ), 'attributes' => array ( ), )), 19 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'first', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get first template or null */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'parameters' => array ( ), 'attributes' => array ( ), )), 20 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'last', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get last template or null */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => '?App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'parameters' => array ( ), 'attributes' => array ( ), )), 21 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array of TemplateMapping objects */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 22 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toLegacyArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to legacy array format for backward compatibility */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 23 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryFootprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory footprint of entire collection */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', 'arrayiterator' => 'ArrayIterator', 'countable' => 'Countable', 'iteratoraggregate' => 'IteratorAggregate', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), 24 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'count', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'int', 'parameters' => array ( ), 'attributes' => array ( ), )), 25 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getIterator', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'ArrayIterator', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/ValueObjects/TemplateMapping.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\ValueObjects\\TemplateMapping', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Immutable value object for template mappings * Replaces simple key-value arrays with memory-efficient typed structure */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'create', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'name', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromPath', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'path', 'type' => 'App\\Framework\\Filesystem\\FilePath', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getUniqueId', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get unique identifier for deduplication */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isSameAs', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if this mapping is the same as another */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'other', 'type' => 'self', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'matchesName', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if template matches name pattern */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'pattern', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getExtension', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get template extension */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'isType', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Check if template is of specific type */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'type', 'type' => 'string', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'toArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Convert to array for serialization */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 9 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'fromArray', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Create from array data */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => true, 'returnType' => 'self', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'data', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 10 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getMemoryFootprint', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get memory footprint estimate */', 'namespace' => 'App\\Framework\\Discovery\\ValueObjects', 'uses' => array ( 'byte' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'filepath' => 'App\\Framework\\Filesystem\\FilePath', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Core\\ValueObjects\\Byte', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Discovery/Visitors/AttributeVisitor.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Discovery\\Visitors\\AttributeVisitor', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Enhanced attribute visitor with property support and performance optimizations */', 'namespace' => 'App\\Framework\\Discovery\\Visitors', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'attributetarget' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'abstract' => false, 'final' => true, 'extends' => NULL, 'implements' => array ( 0 => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', ), 'usedTraits' => array ( ), 'traitUseAdaptations' => array ( ), 'statements' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => '__construct', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => NULL, 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'attributeMappers', 'type' => 'array', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'reflectionProvider', 'type' => '?App\\Framework\\Reflection\\ReflectionProvider', 'byRef' => false, 'variadic' => false, 'hasDefault' => true, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getType', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'string', 'parameters' => array ( ), 'attributes' => array ( ), )), 2 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitFile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 3 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'visitClass', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'className', 'type' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), 1 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'context', 'type' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 4 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'shouldProcessFile', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'bool', 'parameters' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedParameterNode::__set_state(array( 'name' => 'file', 'type' => 'App\\Framework\\Filesystem\\File', 'byRef' => false, 'variadic' => false, 'hasDefault' => false, 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), 5 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'reset', 'phpDoc' => NULL, 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), 6 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getRegistry', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get the collected attribute registry */', 'namespace' => 'App\\Framework\\Discovery\\Visitors', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'attributetarget' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'parameters' => array ( ), 'attributes' => array ( ), )), 7 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'getPerformanceStats', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Get performance statistics */', 'namespace' => 'App\\Framework\\Discovery\\Visitors', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'attributetarget' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'array', 'parameters' => array ( ), 'attributes' => array ( ), )), 8 => \PHPStan\Dependency\ExportedNode\ExportedMethodNode::__set_state(array( 'name' => 'resetCaches', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * Reset performance caches */', 'namespace' => 'App\\Framework\\Discovery\\Visitors', 'uses' => array ( 'attributemapper' => 'App\\Framework\\Core\\AttributeMapper', 'classname' => 'App\\Framework\\Core\\ValueObjects\\ClassName', 'methodname' => 'App\\Framework\\Core\\ValueObjects\\MethodName', 'discoveryvisitor' => 'App\\Framework\\Discovery\\Contracts\\DiscoveryVisitor', 'attributeregistry' => 'App\\Framework\\Discovery\\Results\\AttributeRegistry', 'attributetarget' => 'App\\Framework\\Discovery\\ValueObjects\\AttributeTarget', 'discoveredattribute' => 'App\\Framework\\Discovery\\ValueObjects\\DiscoveredAttribute', 'filecontext' => 'App\\Framework\\Discovery\\ValueObjects\\FileContext', 'file' => 'App\\Framework\\Filesystem\\File', 'cachedreflectionprovider' => 'App\\Framework\\Reflection\\CachedReflectionProvider', 'reflectionprovider' => 'App\\Framework\\Reflection\\ReflectionProvider', 'wrappedreflectionclass' => 'App\\Framework\\Reflection\\WrappedReflectionClass', 'throwable' => 'Throwable', ), 'constUses' => array ( ), )), 'byRef' => false, 'public' => true, 'private' => false, 'abstract' => false, 'final' => false, 'static' => false, 'returnType' => 'void', 'parameters' => array ( ), 'attributes' => array ( ), )), ), 'attributes' => array ( ), )), ), '/home/michael/dev/michaelschiemer/src/Framework/Email/CssInliner.php' => array ( 0 => \PHPStan\Dependency\ExportedNode\ExportedClassNode::__set_state(array( 'name' => 'App\\Framework\\Email\\CssInliner', 'phpDoc' => \PHPStan\Dependency\ExportedNode\ExportedPhpDocNode::__set_state(array( 'phpDocString' => '/** * CSS Inliner for Email Templates * Converts